HOWTO · Git
Git용 SourceGear DiffMerge 도구 설정
이 기사에서는 SourceGear의 DiffMerge를 기본 difftool로 사용하도록 Git을 구성하는 과정에 대해 설명합니다.
이 기사에서는 SourceGear의 DiffMerge를 기본 difftool로 사용하도록 Git을 구성하는 방법에 대해 설명합니다. 이 도구를 사용하면 Git의 기본 difftool에 비해 향상된 시각적 효과로 병합 충돌을 쉽게 이해할 수 있습니다.
3방향 파일 비교를 지원하므로 3방향 병합에 이상적인 도구입니다.
파일의 이전 상태, 현재 상태, 병합 후 결과를 볼 수 있습니다. SourceGear의 공식 웹사이트에서 DiffMerge를 다운로드하여 설치해야 합니다.
Windows에서 DiffMerge 설정
기본적으로 DiffMerge 도구를 사용하도록 Git을 설정하려면 이를 .gitconfig 파일에 추가합니다.
[diff]
tool = DiffMerge
[difftool "DiffMerge"]
cmd = 'C:/Program Files/SourceGear/Common/DiffMerge/sgdm.exe' "$LOCAL" "$REMOTE"
[merge]
tool = DiffMerge
[mergetool "DiffMerge"]
cmd = 'C:/Program Files/SourceGear/Common/DiffMerge/sgdm.exe' -merge -result="$PWD/$MERGED" "$PWD/$LOCAL" "$PWD/$BASE" "$PWD/$REMOTE"
trustExitCode = true
[mergetool]
keepBackup = false
비교 인수 매개변수의 경우 다음이 있습니다.
- 원본 파일인
$LOCAL. - 수정된 파일인
$REMOTE.
Git Bash에서 git difftool 및 git mergetool 명령을 실행하여 DiffMerge를 열 수 있습니다.
또는 명령 프롬프트에서 아래 명령을 실행하여 .gitconfig 파일을 업데이트할 수 있습니다.
C:\> git config --global diff.tool diffmerge
C:\> git config --global difftool.diffmerge.cmd
"C:/Program\ Files/SourceGear/Common/DiffMerge/sgdm.exe
\"$LOCAL\" \"$REMOTE\""
C:\> git config --global merge.tool diffmerge
C:\> git config --global mergetool.diffmerge.trustExitCode true
C:\> git config --global mergetool.diffmerge.cmd
"C:/Program\ Files/SourceGear/Common/DiffMerge/sgdm.exe
-merge -result=\"$MERGED\" \"$LOCAL\" \"$BASE\" \"$REMOTE\""
Mac OS에서 DiffMerge 설정
Mac OS에서 DiffMerge를 사용하도록 Git을 구성하는 프로세스는 아마도 가장 간단할 것입니다. 아래 디렉토리가 있는지 확인하십시오.
/usr/local/bin/diffmerge
아래 명령을 실행하여 .gitconfig 파일을 업데이트하고 테스트하십시오.
git config --global merge.tool diffmerge
git config --global mergetool.diffmerge.cmd "/usr/local/bin/diffmerge --merge --result=\"\$MERGED\" \"\$LOCAL\" \"\$BASE\" \"\$REMOTE\""
git config --global mergetool.diffmerge.trustExitCode true
git config --global mergetool.keepBackup false
git config --global diff.tool diffmerge
git config --global difftool.diffmerge.cmd "/usr/local/bin/diffmerge --nosplash \"\$LOCAL\" \"\$REMOTE\""
git config --global -e 명령을 실행하여 .gitconfig 파일을 검사할 수 있습니다. 다음과 같이 표시되어야 합니다.
[diff]
tool = diffmerge
[merge]
tool = diffmerge
...
[mergetool "diffmerge"]
cmd = /usr/local/bin/diffmerge --merge --result=\"$MERGED\" \"$LOCAL\" \"$BASE\" \"$REMOTE\"
trustExitCode = true
[mergetool]
keepBackup = false
[difftool "diffmerge"]
cmd = /usr/local/bin/diffmerge --nosplash \"$LOCAL\" \"$REMOTE\"
Ubuntu에서 DiffMerge 설정
Ubuntu에서 구성하는 것은 Mac OS와 매우 유사합니다. 동일한 명령을 사용하지만 설치 위치를 변경합니다.
다음은 명령입니다.
git config --global merge.tool diffmerge
git config --global mergetool.diffmerge.cmd "/usr/bin/diffmerge --merge --result=\"\$MERGED\" \"\$LOCAL\" \"\$BASE\" \"\$REMOTE\""
git config --global mergetool.diffmerge.trustExitCode true
git config --global mergetool.keepBackup false
git config --global diff.tool diffmerge
git config --global difftool.diffmerge.cmd "/usr/bin/diffmerge --nosplash \"\$LOCAL\" \"\$REMOTE\""
그 정도입니다. 이제 아래 명령을 실행하여 테스트할 수 있습니다.
$ git mergetool
$ git difftool
요약하자면, SourceGear의 DiffMerge 도구를 사용하도록 Git을 구성하려면 운영 체제에 따라 나열된 명령으로 .gitconfig 파일을 업데이트해야 합니다.