병합 도구 DiffMerge, Mac에서 충돌할 때도 단어 차이 발생

입문


지금까지git의 충돌을 없애는 합병 도구로vimdiff를 사용했지만 diffchar.vim를 사용해도 단어마다 차이를 잘 나타내지 못하기 때문에 csv 등 합병 시 서로 다른 diff 도구를 사용하여 충돌하는 곳을 확인하는 등 번거로운 작업이 발생했다.
따라서 단어마다 차이를 줄 수 있는 통합 도구를 찾기로 했다.
윈도라면 WinMerge 유명한 도구가 있지만 맥이라면 의외로 좋은 것을 찾지 못한다.참고로 자기 컴퓨터의 OS는 다음과 같다.
macOS High Sierra 10.13.6
찾아보니 DiffMerge 이 공구가 괜찮은 것 같아요.

다운로드


다운로드 페이지에서 OS X10.6+ Installer(Intel)를 다운로드합니다.
pkg 파일을 열고 설치 프로그램의 지시에 따라 조작하기만 하면 됩니다.

git 설정


도구 설정 병합

git config --global merge.tool diffmerge
git config --global mergetool.diffmerge.cmd 'diffmerge --merge --result="$MERGED" "$LOCAL" "$(if test -f "$BASE"; then echo "$BASE"; else echo "$LOCAL"; fi)" "$REMOTE"'
git config --global mergetool.diffmerge.trustExitCode true
git config --global mergetool.keepBackup false

diff 도구 설정


이 설정은 diff도 DiffMerge를 사용하고 싶은 경우에만 하면 됩니다.
git config --global diff.tool diffmerge
git config --global difftool.diffmerge.cmd 'diffmerge "$LOCAL" "$REMOTE"'

DiffMerge의 일본어 설정


기본값을 유지하면 일본어가 문자화되기 때문에 아래 내용을 참고하여 문자 코드를 설정합니다.
DIFFMERGE 를 사용하여 소스 코드의 차이를 비교해 보십시오.

결과



단어의 차이를 알아라!
그리고 최종적으로 중간 보기에 적응하고 싶은 차분을 떼어내서 저장하면 됩니다.

참고 자료

  • smoll/USING-DIFFMERGE.md
  • DIFFMERGE 를 사용하여 소스 코드의 차이를 비교해 보십시오.
  • [Mac 프로그래밍] "DiffMerge" 에서 일본어 텍스트를 올바르게 표시하는 방법
  • 좋은 웹페이지 즐겨찾기