· KLDP.org · KLDP.net · KLDP Wiki · KLDP BBS ·
Mercurial Quick Start

username 설정하기

Mercurial은 커밋할때 사용되는 사용자이름으로 'user@localhost'를 기본값으로 사용합니다. 이것은 대게 의미없으므로 제대로된 이메일주소로 설정하는 것이 좋습니다. ~/.hgrc (윈도에서는 %USERPROFILE%\Mercurial.ini) 파일에 아래와 같이 추가하세요:
[ui]
username = Author Name <email@address>

이미 존재하는 Mercurial 프로젝트에서 작업하기

만약 브라우져로 확인할 수 있는 저장소의 URL이 있다면 (예: http://selenic.com/hg), 아래와 같이 복사본을 가져올 수 있습니다:
$ hg clone http://selenic.com/hg
(기본값으로) hg라는 새 디렉토리가 생성되며, 전체 프로젝트의 기록(history)를 가져오고, 가장 최신의 changeset으로 체크 아웃 합니다.

Mercurial 프로젝트 설정하기

hg 저장소를 하나 만들어서 시작해 볼 수도 있습니다:
$ cd project/
$ hg init           # .hg 만듦
Mercurial은 당신의 -프로젝트의- 루트 디렉토리에서 glob패턴들과 정규표현식들로 무시할 파일들을 모아둔 .hgignore파일을 찾습니다. 아래에 .hgignore 파일 예제가 있습니다.
syntax: glob
*.orig
*.rej
*~
*.o
tests/*.err

syntax: regexp
.*\#.*\#$
당신의 .hgignore 파일을 시험해 보세요:
$ hg status         # 무시하지 않는 파일들을 모두 보여주기
이 명령어는 무시하지 않는 모든 파일과 ? 표시(버젼관리 하지 않음)를 리스트업 할 것입니다. 당신의 .hgignore 파일을, status명령 실행시 당신이 버젼관리(track) 하기를 원하는 파일들만 리스트업 될 때 까지 수정하세요. .hgignore 파일 또한 버젼관리 하여야 할 것입니다! 하지만 빌드 과정에서 생성된 파일들은 버젼관리 하기를 원하지 않겠죠. 만족스러우면, -? 표시되는- 파일들의 추가를 예약하고 커밋하세요.
$ hg add            # 그 'unknown'파일들을 추가하기
$ hg commit         # 모든 수정 사항을 커밋하고, 체인지로그를 편집

브렌치하기, 머지하기

  $ hg clone project project-work    # 새 브렌치를 생성
  $ cd project-work
  $ <make changes>
  $ hg commit
$ cd ../project
$ hg pull ../project-work   # project-work로 부터 변경 사항을 땡겨오기
$ hg merge                  # project-work의 최신 내용(tip)을 우리의 작업 디렉토리로 머지하기
$ hg commit                 # 머지 결과를 커밋하기

패치 내보내기

(저장소 내용 수정)
$ hg commit
$ hg export tip    # 가장 최근의 커밋을 내보내기

네트워크 지원

  # 기본 Mercurial 저장소로부터 복제(clone)
  foo$ hg clone http://selenic.com/hg/
  foo$ cd hg

# 이미 존재하는 저장소를 갱신(update)
foo$ hg pull http://selenic.com/hg/

# 브라우져 가능한 인터페이스와 함께 당신의 저장소를 HTTP로 내보내기 
foo$ hg serve -n "My repo" -p 80

# SSH를 통해서 원격 저장소에 변경 내용을 밀어넣기(push)
foo$ hg push ssh://user@example.com/hg/

ID
Password
Join
Someone is unenthusiastic about your work.


sponsored by andamiro
sponsored by cdnetworks
sponsored by HP

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2007-11-19 14:41:09
Processing time 0.0047 sec