오랜만에 글을쓰네요..; 하.. 몇달만인지 킄ㅋㅋ
잡설은 집어치우고 머큐리얼에 대하여 글을 써보겠습니다.
(아놔 자바스크립트도 써야하는디 ㅠㅠ)
각 관리 툴의 특징은 알아서 검색해보시길.. 저같은경우 1인 프로젝트일 경우 SVN, 2인 이상부터 GIT, Mercurial을 권해드리고 싶습니다.
필자가 포스팅하려는 관리툴은 바로 HortoiseHg Mercurial입니다.
학업수준에서 배울만한 관리툴이 아니므로 다소 생소할수 있지만 실무에서는 SNV, GIT, Mercurial을 많이 사용하기때문에 미리 알아두는것도 나쁘지 않습니다.
다음 링크에서 Hg Mercurial Workbench를 다운받아주세요.
이 툴은 가시적으로 코드의 형상관리를 해주는 아주 좋은 툴입니다. 물론 무료 이구요.
http://tortoisehg.bitbucket.org/download/index.html
아직 Hg Mercurial Workbench를 통해 형상관리는 하지않았지만 언젠가는 branch가 무수히 많아질것입니다. 이때 기존코드와의 비교는 물론 과거내역을 확인 및 동료간의 중복파일머지등 빈번한 마찰이 매우 많을겁니다.
다행히도 Hg Mercurial Workbench는 merge, diff , strip 등.. 막강한 형상관리 기능을 지원하고있기때문에 긴장할 필요는 없습니다. 다만.... 저런 기능들앞에서 인코딩의 문제가 가장 큰 벽으로 남아있습니다. UTF-8 과 EUC-KR은 실제 사용 바이트 수 부터 차이가 나며 지원 인코딩에 한계때문에 기본적으로 지원하는 툴로는 감당할수 없습니다.
심각한경우 UTF-8로 된 파일이 EUC-KR로 변환되어 머지가 되버리는 어처구니 없는 상황도 나옵니다.
따.라.서 다음 부가적인 툴을 받아줍니다.
툴 이름은 SourceGear 라는 diff 툴입니다. 4버젼은 유로, 그 이하는 무료입니다.
http://www.sourcegear.com/
(블로그 관리자들은 내 ftp에서 3.3.2버젼 내려받으시길.. 64 , 86 버젼 다있음)
현재4.0버젼이 최신이지만 아쉽게도 유료화되었습니다. 하지만 3.3.2버젼은 무료이므로 안심하고 다운받으셔도 됩니다. 허나 3.3.2버젼은 함부로 링크하지 않겠습니다. (구글링하세요.)
두 파일 모두 설치를 완료하셨다면 머큐리얼의 서드파티인 소스기어를 셋팅해보겠습니다.
(셋팅하지 않을경우 머큐리얼이 갖는 기본 diff 툴이 실행되며, 인코딩의 벽에 심각한 좌절감을 맛보실듯 ㅋㅋ)
우선 머큐리얼을 실행 후 Global Setting(또는 mercurial.ini파일) 에서 다음과 같이 설정해주세요.
[ui]
username = [실제 사용자 이름]
merge = diffmerge
[extensions]
mq =
hgext.extdiff =
[web]
push_ssl = False
allow_push = *
[extdiff]
cmd.diffmerge = C:\Program Files\SourceGear\Common\DiffMerge\sgdm.exe
[merge-tools]diffmerge.executable = C:\Program Files\SourceGear\Common\DiffMerge\sgdm.exe
diffmerge.args = -merge -result=$output -t1="Local Version" -t2=$output -t3="Other Version" -caption=$output $local $base $other
diffmerge.binary = False
diffmerge.symlinks = False
diffmerge.gui = True
이제 머큐리얼의 기본설정은 끝입니다.
위 설정의 기준은 외부 푸쉬와 strip 및 SourceGear 연동입니다.