답변:
로부터 TortoiseHg 자주 묻는 질문 :
이 라인을 개인 Mercurial.ini 파일에 추가하십시오
[확장명] extdiff = [익스트림] cmd.winmerge = C : \ Program Files \ WinMerge \ WinMergeU.exe opts.winmerge = / e / x / u / wl
이제 전역 설정 도구를 실행하십시오. TortoiseHg 탭의 Visual Diff Command 드롭 다운 목록에서 winmerge를 사용할 수 있습니다. winmerge를 선택하고 적용한 다음 닫습니다.
이 같은 접근 방식을 사용하여 거의 모든 시각적 차이 도구를 추가 할 수 있지만 릴리스 0.8 이상을 사용하지 않는 한 diff 도구가 TortoiseHg에서 사용하는 경우 diff 도구가 디렉토리 diff를 지원할 수 있어야합니다.
Cygwin에서 Mercurial을 실행할 경우를 대비 하여 Joel도 여기 에 솔루션을 제공했습니다 .
WinMerge 명령 줄에 대한 설명은 여기에 있습니다 . 요약:
/e
Esc 키를 한 번 눌러 WinMerge를 닫을 수 있습니다 /x
동일한 파일의 비교를 시작할 때 정보 대화 상자를 표시 한 후 WinMerge를 닫습니다. /u
WinMerge가 경로 (왼쪽 또는 오른쪽)를 가장 최근에 사용한 (MRU) 목록에 추가하지 못하게합니다. /wl
읽기 전용으로 왼쪽을 엽니 다이것이 나를 위해 작동하는 방법입니다-거북이 이외의 순수한 수은 명령 줄
먼저 파일을 편집하십시오 (64 비트 창에서)
C : \ Program Files (x86) \ Mercurial \ Mercurial.ini
[extensions]
; must uncomment this line
extdiff =
[extdiff]
; i'm using winmerge unicode version
cmd.winmerge = C:\Program Files (x86)\WinMerge\WinMergeU.exe
; it explains winmerge command line parameters here: http://winmerge.org/docs/manual/CommandLine.html
opts.winmerge = /r /e /x /u /wl
그런 다음 "hg diff ..."대신 "hg winmerge ..."를 사용할 수 있습니다.
글쎄, 앞서 주어진 대답은 나에게 원하는 효과를주지 않습니다. 그것들은 수정본을 수정하고 제자리에서 편집하는 것을 허용하지 않습니다 (나는 TortoiseSVN에 대해 동일한 기능을 상자에서 사용할 수 있음). 이를 위해 mercurial.ini에이 섹션을 추가했습니다.
[merge-tools]
winmerge.regkey=Software\Thingamahoochie\WinMerge\
winmerge.regname=Executable
winmerge.priority=-10
winmerge.args=/e /x /wl /ub /dl other /dr local $other $local $output
winmerge.fixeol=True
winmerge.checkchanged=True
winmerge.gui=True
winmerge.diffargs=/r /e /x /ub /wl /dl '$plabel1' /dr '$clabel' $parent $child
winmerge.diff3args=
winmerge.dirdiff=True
이것은 http://blog.stevehorn.cc/blog/easy-mercurial-visual-diff-between-two.html 에서 가져온 것입니다.