2011-09-20 6 views
0

Kaleidoscope를 기본 git difftool로 성공적으로 설정했으며 매력적으로 작동합니다. 그러나 내가 fetch then git difftool을 만들 때, 을 참조하십시오. 을 선택하거나 병합 할 수 없습니다. 적어도 만화경을 통해 보지 마십시오.Config : git 데이터를 가져 와서 git mergetool과 병합하십시오.

는 지금, 나는 내가 가져 변경된 내용을보고, 병합 무엇를 선택할 수 있도록 내 mergetool로 파일 병합 (엑스 코드와 함께 번들로 병합 응용 프로그램)을 설정합니다.

이것이 가능합니까? 그렇다면 어떻게 설정해야합니까?

싫은 질문에 미리 사과드립니다.

답변

1

나는 SourceGear의 DiffMerge 응용 프로그램을 사용하여 병합합니다. opendiff (Xcode 병합 도구)보다 훨씬 낫습니다. 이것이 제가 여러분에게 권장하는 것입니다. 아래의 원칙을 사용하여 원하는 경우 opendiff를 구성 할 수 있지만 DiffMerge보다 훨씬 강력합니다.

내 글로벌 자식 설정 파일이 포함되어

[mergetool "diffmerge"] 
     cmd = "diffmerge --merge --result=\"$MERGED\" \"$LOCAL\" \"$(if test -f \"$BASE\"; then echo \"$BASE\"; else echo \"$LOCAL\"; fi)\" \"$REMOTE\"" 
     trustExitCode = false 
[merge] 
     tool = diffmerge 

을 이제 할 수있는 병합이있을 때, 나는 "자식 mergetool"말과 병합해야하는 각 파일에 대한 DiffMerge를 시작하라고하라는 메시지가 표시됩니다. 파일에 대한 모든 옵션 중에서 선택하여 해결 된 파일에 저장 한 다음 이동합니다. 아주 좋다.

+0

이것은 매력처럼 작동하는 것 같지만 아직 병합을 가져 오는 데 사용할 수 없습니다.이 작업을 수행하는 방법에 대한 지침이 있습니까? – AeroCross

+0

글쎄, 당신은 반드시 "병합 가져 오기"를 병합 도구를 사용하지 마십시오. 이를 사용하여 병합 충돌을 해결합니다. 'git pull '이라면, 자신이 행복하게 할 수있는 것을 병합 할 것이고, 병합 충돌에 관해서는 해결할 수 없다. 그런 다음'git mergetool'이라고하면, 충돌 한 파일을 거쳐 수동으로 해결할 수 있습니다. –

+0

필자는 마침내 DiffMerge를 테스트 할 기회를 얻었으며 매력처럼 작동합니다. 3 가지 방법이 특별히 훌륭합니다. 문제는 UTF-8 문자로 작동하지 않거나 뭔가 빠져 있다는 것입니다. – AeroCross