메인 컨텐츠로 가기

developerWorks 이용 약관에 동의하시는 경우 제출을 클릭하십시오. 이용 약관 보기.

developerWorks에 처음 로그인하면 developerWorks프로파일이 생성됩니다.귀하의 프로파일에서 동의하신 내용이 공개되지만 이 사항은 언제든지 변경 가능합니다. 귀하의 성명(숨김으로 체크되어 있어도 표시됩니다)과 디스플레이 이름은 게시한 컨텐츠나 사이트 엑세스시 표시됩니다.

모든 정보가 안전하게 전송되었습니다.

  • 닫기 [x]

처음 developerWorks에 로그인할 때 프로파일이 작성되므로, 이를 위해 디스플레이 이름을 선택해야 합니다. 선택하신 디스플레이 이름은 developerWorks에 게시한 컨텐츠에 표시됩니다.

3글자 이상 31글자 이하의 길이로 사용 가능합니다. dW커뮤니티 내에서는 보안상 이메일주소를 제외한 다른 이름을 지정하셔야 합니다.

developerWorks 이용 약관에 동의하시는 경우 제출을 클릭하십시오. 이용 약관 보기.

모든 정보가 안전하게 전송되었습니다.

  • 닫기 [x]

Mercurial을 사용하여 소스 코드 관리하기

프로젝트 소스 코드를 관리하는 데 필요한 강력하고 유연한 시스템

William von Hagen , 시스템 어드민,작가, WordSmiths
William von Hagen은 20여 년간 UNIX 시스템 관리자로 일하며 다양한 기술적 주제에 관해 집필해왔고, 1993년 이후로는 Linux를 적극 지지하며 활발한 활동을 펼치고 있다. Bill은 Ubuntu Linux, Xen Virtualization, GCC(GNU Compiler Collection), SUSE Linux, Mac OS X, Linux 파일 시스템 및 SGML과 같은 주제에 관한 서적의 저자 또는 공동 저자이기도 하다. Bill은 Linux 및 Mac OS X 관련 출판물과 웹 사이트에 게재된 수많은 기사를 작성하기도 했다. Bill의 이메일 주소는 wvh@vonhagen.org이다.

요약:  무엇보다도 소프트웨어 개발 프로젝트에서는 소스 코드를 관리하는 작업이 코드를 작성하는 것만큼이나 중요합니다. UNIX® 와 Linux® 시스템에는 다양한 VCS(Version Control System) 패키지가 있으며 각 패키지는 이러한 일반적인 문제점에 대해 약간 다른 접근 방식을 취하고 있습니다. 이 기사에서는 단순히 hg라고 부르는 Mercurial 소스 코드 관리 시스템을 집중적으로 살펴봅니다. Mercurial은 강력하고 경량인 최신 소스 코드 제어 솔루션을 제공합니다. 개발자는 이 솔루션을 이용하여 모든 프로젝트 구성원이 사용할 수 있는 안정되고 중앙화된 소스 코드 저장소를 유지보수하면서 소프트웨어 프로젝트를 쉽게 변경하고 디버깅할 수 있습니다.

기사 게재일:  2011 년 8 월 31 일
난이도: 중급 원문:  보기 PDF:  A4 and Letter (49KB | 11 pages)Get Adobe® Reader®
페이지뷰:  2571 회
의견:  


UNIX와 Linux 시스템에서의 소스 코드 관리

변경된 코드를 식별하고 추적하는 작업은 다수의 개발자들에 의해 수행되며, 이러한 코드를 하나의 최신 코드 베이스로 병합하면 협업적인 다중 개발자 프로젝트가 가능해진다. VCS 소프트웨어는 RCS(Revision Control System) 또는 SCM(Source Code Managment) 시스템이라고도 하며, 이 소프트웨어를 이용하면 다수의 사용자가 동일한 파일이나 프로젝트를 변경할 수 있어서 어떤 개발자가 다른 개발자가 변경한 코드를 우연히 겹쳐 쓸 수 없게 된다.

Linux®와 UNIX® 시스템에는 RCS 및 CVS(Concurrent Versions System)와 같은 구형 시스템으로부터 Arch, Bazaar, Git, Subversion 및 Mercurial과 같은 최신 시스템에 이르기까지 다양한 VCS 시스템이 있다. Git와 달리 Mercurial은 처음에는 Linux 커널의 소스 코드를 유지보수하고 관리하는 데 사용된 BitKeeper라고 하는 상용 소스 코드 관리 시스템을 대체하는 오픈 소스였다. 그 이후에 Mercurial은 많은 오픈 소스 및 상용 프로젝트에서 사용되는 인기 있는 VCS 시스템으로 발전되었다. Mercurial을 사용하는 프로젝트로는 Mozilla, IcedTea 및 MoinMoin wiki가 있다. 이러한 사례를 포함한 더 자세한 내용을 확인할 수 있는 링크는 참고자료를 확인한다.

일반적으로 VCS 시스템은 변경할 수 있고 추적할 수 있는 각 소스 코드 콜렉션을 저장소로 참조한다. 중앙화된 VCS 시스템인 CVS 및 Subversion과 같은 전통적인 VCS 시스템과 분산 VCS 시스템인 Mercurial 및 Git와 같은 더 유연한 VCS 시스템 간의 중요한 차이점은 개발자가 저장소와 상호 작용하는 방식에 있다. 개발자는 클라이언트/서버 모델을 사용하여 중앙화된 VCS 시스템과 상호 작용한다. 이런 경우에는 소스 코드 로컬 사본의 변경된 코드가 중앙 저장소에만 다시 삽입된다. 개발자는 피어 투 피어 모델을 사용하여 분산 VCS 시스템과 상호 작용하며 이런 경우에는 중앙 저장소에 있는 모든 사본이 변경될 수 있고 다른 사본과 함께 공유될 수 있는 저장소가 된다. 사실상 분산 VCS 시스템에는 중앙의 마스터 저장소라는 개념이 없지만, 해당 소프트웨어의 마스터 버전을 빌드하고, 테스트 및 유지보수하는 데 필요한 하나의 저장소를 둔다는 정책에 따라 거의 언제나 하나의 마스터 저장소가 정의된다.

Mercurial을 사용하는 이유

Mercurial은 시작하기 쉬운 작지만 강력한 분산 VCS 시스템으로 여전히 VCS 전문 사용자가 사용하는 데 필요한 고급 명령을 제공한다. Mercurial의 분산 특성을 이용하면 로컬에서 프로젝트를 쉽게 작업할 수 있을 뿐만 아니라 로컬 커미트를 통해 변경된 코드를 추적하고 관리할 수 있으며 이러한 변경 코드를 필요할 때마다 원격 저장소에 저장할 수 있다.

최신 분산 VCS 시스템 중에서 Mercurial과 가장 근접한 VCS 시스템은 Git이다. Mercurial과 Git의 차이점은 다음과 같다.

  • 내장된 다수의 실행 취소 조작: Mercurial의 revert, backoutrollback 명령을 이용하면 특정 파일의 이전 버전이나 커미트된 이전의 변경 세트를 쉽게 되돌릴 수 있다. Git에는 일반적으로 이해하기 어려운 구문을 사용하는 하나의 내장 revert 명령이 있다.
  • 내장 웹 서버: Mercurial은 간단한 통합 웹 서버를 제공하며 이 웹 서버를 이용하면 다른 개발자가 가져오기 작업을 수행할 저장소를 신속하게 호스트할 수 있다. 밀어넣기 동작을 수행하려면 보안을 무시하거나 SSL(Secure Sockets Layer)을 지원하도록 더 복잡하게 설정해야 한다.
  • 복사 및 이동 조작을 수행하는 동안 히스토리 유지: Mercurial의 copymove 명령은 모두 완전한 히스토리 정보를 유지하는 반면에 Git는 어느 경우에도 히스토리를 유지하지 않는다.
  • 브랜치: Mercurial은 자동으로 모든 브랜치를 공유하지만, Git는 로컬에서 브랜치를 작성하거나 브랜치를 원격 저장소에 있는 특정 브랜치에 맵핑하여 각 저장소에 자체 브랜치를 설정한다.
  • 글로벌 및 로컬 태그: Mercurial은 저장소 간에 글로벌 태그를 지원하며, 이 태그를 이용하면 브랜치를 설정하지 않아도 코드 개발 과정의 특정 시점에 관한 정보를 쉽게 공유할 수 있다.
  • Windows 플랫폼에 대한 기본적인 지원: Mercurial은 Python으로 작성되었으며 Microsoft® Windows® 시스템에서 지원된다. 따라서 Mercurial은 Windows 실행 파일로 사용 가능하다(참고자료 참조). Windows에서 Git를 사용하는 방법은 더 복잡하다. msysGit를 사용하거나 Cygwin 하에서 표준 git를 사용하거나 웹 기반 호스팅 시스템과 저장소를 사용할 수 있다.
  • 자동 저장소 압축: Git를 사용하는 경우에는 사용자가 저장소를 명시적으로 압축하고 가비지 컬렉터를 작동해야 하지만, Mercurial에서는 이러한 조작이 자동으로 수행된다. 그러나 코드 베이스가 같은 경우에 Mercurial의 저장소는 Git의 저장소보다 더 큰 경향이 있다.

Mercurial과 Git를 선호하는 개발자라면 각 VCS 시스템 명령 세트의 학습 커브와 장점 및 유용성을 살펴보고 싶을 것이다. 그러나 지면 관계상 여기에서는 이러한 내용을 다루지 않는다. 그렇지만 관련 주제를 웹에서 검색하면 흥미로운 읽을 거리를 많이 찾을 수 있다.

Mercurial 저장소 작성 및 사용

Mercurial을 사용하는 경우에는 프로젝트의 소스 코드를 저장할 로컬 저장소를 두 가지 방법으로 작성한다. 저장소를 명시적으로 작성하거나 기존의 원격 저장소를 복제한다.

  • 로컬 저장소를 작성하려면, hg init [REPO-NAME] 명령을 사용한다. 이 명령을 실행할 때 저장소의 이름을 제공하면 특정 위치에 이 저장소에 해당하는 디렉토리가 작성된다. 저장소의 이름을 제공하지 않으면 현재의 작업 디렉토리가 저장소가 된다. 후자는 기존의 코드 베이스를 저장할 Mercurial 저장소를 작성하는 경우에 유용하다.
  • 기존 저장소를 복제하려면, hg clone REPO-NAME [LOCALNAME] 명령을 사용한다. Mercurial은 원격 저장소에 액세스하는 데 필요한 HTTP 및 SSH 프로토콜을 지원한다. 목록 1에는 hg 명령 예제와 SSH를 통해 저장소를 복제한 결과가 표시되어 있다.



    목록 1. SSH를 통해 Mercurial 저장소 복제
    	
    	$ hg clone ssh://codeserver//home/wvh/src/pop3check 
    	wvh@codeserver's password: 
    	destination directory: pop3check
    	requesting all changes
    	adding changesets
    	adding manifests
    	adding file changes
    	added 1 changesets with 12 changes to 12 files
    	updating to branch default
    	12 files updated, 0 files merged, 0 files removed, 0 files unresolved
    	remote: 1 changesets found
          

참고: HTTP 프로토콜을 사용하여 Mercurial 저장소에 액세스하려면 해당 저장소에서 Mercurial의 내부 웹 서버를 시작하거나(hg serve -d), Mercurial의 hgweb.cgi 스크립트를 사용하여 Mercurial과 기존 웹 서버(Apache)를 통합해야 한다. HTTP를 통해 복제를 하는 경우에는 일반적으로 로컬 저장소의 이름을 지정한다.

저장소를 작성하거나 복제하여 해당 저장소를 작업 디렉토리로 구성하면 저장소에 있는 코드를 대상으로 작업을 시작하고 파일을 새로 추가하는 등의 작업을 수행할 수 있다.

Mercurial에서 도움말 확인

Mercurial의 기본 명령은 hg로 다른 VCS 시스템에 있는 명령과 비슷한 하위 명령 세트를 지원한다. 가장 일반적으로 사용되는 명령 목록을 확인하려면 hg 명령을 인수를 사용하지 않고 실행한다. 그러면 목록 2에 있는 것과 비슷한 결과가 표시된다.


목록 2. Mercurial에서 제공하는 기본 명령
    
    Mercurial Distributed SCM

    basic commands:

    add        add the specified files on the next commit
    annotate   show changeset information by line for each file
    clone      make a copy of an existing repository
    commit     commit the specified files or all outstanding changes
    diff       diff repository (or selected files)
    export     dump the header and diffs for one or more changesets
    forget     forget the specified files on the next commit
    init       create a new repository in the given directory
    log        show revision history of entire repository or files
    merge      merge working directory with another revision
    pull       pull changes from the specified source
    push       push changes to the specified destination
    remove     remove the specified files on the next commit
    serve      export the repository via HTTP
    status     show changed files in the working directory
    summary    summarize working directory state
    update     update working directory

    use "hg help" for the full list of commands or "hg -v" for details
  

이 짧은 목록에는 기본적인 Mercurial 명령만 표시되어 있다. 전체 목록을 확인하려면 hg help 명령을 실행한다.

: hg help COMMAND 명령을 실행하면 모든 Mercurial 명령에 대한 자세한 도움말을 확인할 수 있다. 이 명령을 실행할 경우에는 COMMAND를 유효한 Mercurial 명령의 이름으로 바꾸어야 한다.

저장소 상태 확인

모든 VCS 시스템에서 가장 일반적으로 수행되는 조작은 변경사항을 확인하는 조작이다. hg status 명령을 사용하여 해당 저장소에 대기 중인 모든 파일 변경 조작을 확인할 수 있다. 예를 들면, 파일을 새로 작성하거나 기존 파일을 수정하면 목록 3과 같은 결과를 확인할 수 있다.


목록 3. Mercurial에서 출력된 상태
    
    $ hg status
    M Makefile
    ? hgrc.example
  

이 경우에는 Makefile이 수정된 기존 파일(해당 행의 시작 부분에 문자 M이 표시됨)이고 hgrc.example 파일은 추적되고 있지 않은 새 파일(해당 행의 시작 부분에 물음표(?)가 표시됨)이다.

파일을 저장소에 추가

hgrc.example 파일을 이 저장소에서 추적되는 파일 목록에 추가하려면 hg add 명령을 사용한다. 둘 이상의 파일 이름을 인수로 지정하면 이러한 파일이 Mercurial에서 추적하는 파일 목록에 명시적으로 추가된다. 파일을 하나도 지정하지 않으면 목록 4와 같이 새로 작성된 파일이 모두 해당 저장소에 추가된다.


목록 4. 저장소에 파일 추가
    
    $ hg add
    adding hgrc.example
  

: 새로 작성된 모든 파일을 자동으로 추가하고 제거된 모든 파일을 영구 제거로 표시하려면 Mercurial의 유용한 hg addremove 명령을 사용한다.

저장소의 상태를 확인하면 목록 5와 같이 새로 작성된 파일이 추가되었다는 것을 알 수 있다(해당 행의 시작 부분에 문자 A가 표시됨).


목록 5. 수정 후의 저장소 상태
    
    $ hg status
    M Makefile
    A hgrc.example
  

변경 커미트

모든 VCS 시스템에서 가장 일반적으로 수행되는 조작은 변경사항을 확인하는 조작이다. 변경사항을 수행하고 테스트하고 나면 이러한 변경사항을 로컬 저장소에 커미트할 수 있다.

처음에 변경사항을 커미트하기 전에 수행해야 할 작업

이번이 첫 번째 Mercurial 프로젝트인 경우에는 Mercurial이 이러한 변경사항을 커미트할 사용자를 식별할 수 있도록 몇 가지 기본적인 정보를 제공해야 한다. 이렇게 하지 않으면 변경사항을 커미트하려고 할 때, abort: no username supplied... 메시지가 표시되고 변경사항은 커미트되지 않는다.

사용자 정보를 추가하려면 홈 디렉토리에 .hgrc 파일을 작성한다. 이 파일은 개인용 Mercurial 구성 파일이다. 최소한 목록 6에 있는 기본 사용자 정보를 이 파일에 추가해야 한다.


목록 6. 사용자의 .hgrc 파일에 있는 필수 정보
    
    [ui]
    username = Firstname Lastname <user@domain.tld>
  

FirstnameLastname을 자신의 이름과 성으로 바꾸고 user@domain.tld를 자신의 이메일 주소로 바꾼 후, 수정된 파일을 저장한다.

모든 사용자에게 적용되는 기본 Mercurial 구성 값(특정 사용자에 해당하는 정보는 제외)을 Linux 및 UNIX 시스템에서는 /etc/mercurial/hgrc에, Microsoft Windows 시스템에서는 Mercurial.ini 파일에 설정할 수 있다. Windows 시스템에서는 Mercurial.ini 파일이 Mercurial 설치 디렉토리에 있다.

표준 커미트 프로세스

~/.hgrc 파일을 작성하거나 확인한 후에는 hg commit 명령을 사용하여 변경사항을 커미트할 수 있고, 커미트할 특정 파일을 식별하거나 다음 예제와 같이 인수를 제공하지 않음으로써 대기 중인 모든 변경사항을 커미트할 수도 있다.

    $ hg commit
    Makefile
    hgrc.example
    committed changeset 1:3d7faeb12722
  

이 예제의 결과에 표시된 바와 같이 Mercurial은 단일 커미트와 연관된 모든 변경가상을 changeset으로 참조한다.

변경사항을 커미트하면 사용자가 커미트 메시지를 추가할 수 있게 Mercurial에서 기본 편집기가 시작된다. 이렇게 하지 않으려면 -m "Message.." 옵션을 사용하여 명령행에서 커미트 메시지를 지정한다. 다른 편집기를 사용하려면 ~/.hgrc 파일의 [ui] 섹션에 editor 항목을 추가하고 editor 키워드 다음에 사용할 편집기의 이름과 연관된 모든 명령행 옵션을 삽입한다. 예를 들면, 비윈도우 모드에서 emacs를 기본 편집기로 사용하기 위해 항목을 추가하면 ~/.hgrc 파일이 목록 7과 같은 형태가 된다.


목록 7. 추가로 사용자 정의한 사용자의 .hgrc 파일
    
    [ui]
    username = William von Hagen <wvh@vonhagen.org>
    editor = emacs -nw
  

: Mercurial에서 제공하는 활동 관련 정보의 양을 극대화하려면 Mercurial 구성 파일의 [ui] 섹션에 verbose = True 항목을 추가한다.

원격 저장소에 변경사항 밀어넣기

원격 저장소의 복제본을 사용할 경우에는 해당 변경사항을 로컬 저장소에 커미트하고 나서 다시 원격 저장소에 밀어 넣는다. 이렇게 하려면 목록 8과 같이 hg push 명령을 사용한다.


목록 8. SSH를 통해 변경사항 밀어넣기
    
    $ hg push
    wvh@codeserver's password: 
    pushing to ssh://codeserver//home/wvh/src/pop3check
    searching for changes
    1 changesets found
    remote: adding changesets
    remote: adding manifests
    remote: adding file changes
    remote: added 1 changesets with 2 changes to 2 files
  

원격 저장소로부터 변경사항 가져오기

독자가 원격 저장소의 복제본을 사용 중이고 다른 사용자도 동일한 저장소를 사용 중인 경우에는 다른 사용자가 수행하여 이 저장소에 밀어 넣은 변경사항을 검색할 수 있다. 이렇게 하려면 목록 9와 같이 Mercurial의 hg pull 명령을 사용한다.


목록 9. SSH를 통해 변경 풀링
    
    $ hg pull
    wvh@codeserver's password: 
    pulling from ssh://codeserver//home/wvh/src/pop3check
    searching for changes
    adding changesets
    adding manifests
    adding file changes
    added 1 changesets with 0 changes to 0 files
    (run 'hg update' to get a working copy)
    remote: 1 changesets found
  

이 명령의 결과에 표시되어 있듯이 이 명령은 원격 저장소에 있는 변경사항에 관한 정보만 검색하므로 hg update 명령을 실행하여 로컬 저장소에 있는 연관된 변경사항을 확인해야 한다. 목록 10에 표시된 바와 같이 이 명령은 저장소가 업데이트된 방식을 식별한다.


목록 10. 저장소를 업데이트하여 변경사항 표시
    
    $ hg update
    0 files updated, 0 files merged, 1 files removed, 0 files unresolved
  

Mercurial에서 변경사항 취소

Mercurial은 커미트된 변경사항을 쉽게 취소할 수 있는 다음과 같은 내장 명령을 제공한다.

  • hg backout CHANGESET: 특정 변경 세트를 실행 취소하고 이 변경 세트를 실행 취소하는 변경 세트를 작성한다. 이 명령을 실행할 때 --merge 옵션을 지정하지 않는 경우에는 변경 세트를 현재의 변경내용에 병합하여 다시 원격 저장소에 밀어 넣어야 한다.
  • hg revert: 이름을 지정하여 둘 이상의 파일을 이전 버전으로 되돌리거나 --all 명령행 옵션을 지정하여 모든 파일을 이전 버전으로 되돌린다.
  • hg rollback: 마지막 Mercurial 트랜잭션을 실행 취소한다. 이러한 트랜잭션은 일반적으로 커미트, 원격 저장소로부터 가져오기 또는 원격 저장소에 밀어넣기를 수행하는 트랜잭션이다. 사용자는 트랜잭션 하나만 실행 취소할 수 있다.

명령을 사용하기 전에 이러한 모든 명령의 온라인 도움말을 참조하자.

요약

앞으로는 Mercurial과 같은 분산 소스 코드 관리 시스템이 많이 사용될 것이다. Mercurial은 오픈 소스 소프트웨어이며 Linux, UNIX, Microsoft Windows 및 Mac OS® X 시스템에서 Mercurial의 사전 컴파일된 버전을 사용할 수 있다. 이 기사에서는 Mercurial을 사용하여 많은 공통 VCS 태스크를 수행하는 방법을 강조하면서 Mercurial을 사용하는 것이 얼마나 쉬운지를 확인했다. 고급 사용자들을 위해 Mercurial은 소스 코드를 관리하고 설치된 Mercurial과의 상호 작용을 사용자 정의하는 데 도움이 되는 다양한 고급 명령과 구성 옵션을 제공한다.


참고자료

교육

제품 및 기술 얻기

  • Mercurial wiki의 다운로드 페이지에는 지원되는 모든 플랫폼을 위한 Mercurial의 컴파일된 버전을 가리키는 링크가 있다.

  • TortiseHG는 Microsoft Windows 시스템을 위한 명령행 Mercurial 애플리케이션과 쉘 확장을 제공한다.

  • MercurialEclipse 플러그인은 Eclipse IDE(Integrated Development Environment) 내에서 Mercurial을 지원한다.

  • FogCreek Software의 Kiln은 무료 시험판과 학생용 버전 및 시작 버전을 온라인 Git 호스팅 서비스(예: GitHub, Repo.Org.Cz)와 비슷한 Mercurial 기반 호스팅 서비스를 통해 제공한다.

  • BitBucket은 온라인(즉, Mercurial 기반 호스팅 서비스)에서 오픈 소스 프로젝트를 위한 무료 호스팅 서비스를 제공할 뿐만 아니라 대규모 개발자 그룹을 위한 유료 호스팅 계획도 제공한다.

  • Windows용 Git인 msysGit를 탐구하자.

토론

필자소개

William von Hagen은 20여 년간 UNIX 시스템 관리자로 일하며 다양한 기술적 주제에 관해 집필해왔고, 1993년 이후로는 Linux를 적극 지지하며 활발한 활동을 펼치고 있다. Bill은 Ubuntu Linux, Xen Virtualization, GCC(GNU Compiler Collection), SUSE Linux, Mac OS X, Linux 파일 시스템 및 SGML과 같은 주제에 관한 서적의 저자 또는 공동 저자이기도 하다. Bill은 Linux 및 Mac OS X 관련 출판물과 웹 사이트에 게재된 수많은 기사를 작성하기도 했다. Bill의 이메일 주소는 wvh@vonhagen.org이다.

잘못된 도움말 신고

부정사용 신고

감사합니다. 이 항목은 운영자가 관심을 표시했습니다.


잘못된 도움말 신고

부정사용 신고

제출실패 신고. 나중에 다시 실행해주세요.


디벨로퍼웍스 로그인


IBM ID가 필요하세요?
IBM ID를 잊으셨습니까?


비밀번호를 잊으셨습니까?
비밀번호 변경

developerWorks 이용 약관에 동의하시는 경우 제출을 클릭하십시오. 이용 약관.

 


developerWorks에 처음 로그인하면 developerWorks프로파일이 생성됩니다.귀하의 프로파일에서 동의하신 내용이 공개되지만 이 사항은 언제든지 변경 가능합니다. 귀하의 성명(숨김으로 체크되어 있어도 표시됩니다)과 디스플레이 이름은 게시한 컨텐츠나 사이트 엑세스시 표시됩니다.

화면상에 보여지는 닉네임을 정하세요.

처음 developerWorks에 로그인할 때 프로파일이 작성되므로, 이를 위해 디스플레이 이름을 선택해야 합니다. 선택하신 디스플레이 이름은 developerWorks에 게시한 컨텐츠에 표시됩니다.

3글자 이상 31글자 이하의 길이로 사용 가능합니다. dW커뮤니티 내에서는 보안상 이메일주소를 제외한 다른 이름을 지정하셔야 합니다.

3개의 &이나 대쉬를 포함해주시고 31글자내로 제한해주세요.


developerWorks 이용 약관에 동의하시는 경우 제출을 클릭하십시오. 이용 약관.

 


아티클 순위

의견

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=20
Zone=AIX와 UNIX, 리눅스
ArticleID=754725
ArticleTitle= : Mercurial을 사용하여 소스 코드 관리하기
publish-date=08312011
author1-email=wvh@vonhagen.org
author1-email-cc=

태그

Help
검색 필드를 사용하여 My developerWorks 내에서 해당 태그가 사용된 모든 종류의 컨텐츠를 검색하십시오.

태그를 더 많이 보거나 적게 보기 위해 슬라이더 막대를 사용하십시오.

인기 태그는 특정 컨텐츠 존(예를 들어, 자바, 리눅스, WebSphere)의 최고 인기 태그를 보여줍니다.

내 태그는 특정 컨텐츠 존(예를 들어, 자바, 리눅스, WebSphere)의 귀하의 태그를 보여줍니다.

검색 필드를 사용하여 My developerWorks 내에서 해당 태그가 사용된 모든 종류의 컨텐츠를 검색하십시오. 인기 태그는 특정 컨텐츠 존(예를 들어, 자바, 리눅스, WebSphere)의 최고 인기 태그를 보여줍니다. 내 태그는 특정 컨텐츠 존(예를 들어, 자바, 리눅스, WebSphere)의 귀하의 태그를 보여줍니다.