HOWTO · Git
Meld를 Git용 Difftool 및 Mergetool로 설정
이 문서에서는 Meld를 Git의 기본 diff 및 병합 도구로 구성하는 프로세스에 대해 설명합니다.
이 기사에서는 Meld를 Git의 기본 diff 및 merge 도구로 구성하는 방법에 대해 설명합니다. Meld는 파일 변경 사항을 검사하고 결과를 병합하기 쉽게 해주는 멋진 GUI diff 프로그램입니다.
첫 번째 단계는 항상 프로그램을 다운로드하여 설치하는 것입니다. 완료되면 우리의 지시를 따르십시오.
Meld를 기본 Git Difftool로 구성
Meld를 difftool로 사용하도록 Git을 구성하려면 .gitconfig 파일을 변경해야 합니다. .gitconfig 파일에 아래 줄을 추가합니다.
[diff]
tool = meld
[difftool]
prompt = false
[difftool "meld"]
cmd = meld "$LOCAL" "$REMOTE"
순서는 $LOCAL 및 $REMOTE 인수의 순서에 따라 결정됩니다. 이 경우 원본 파일인 $LOCAL은 왼쪽에 있고 $REMOTE는 오른쪽에 수정된 파일입니다.
다른 방법을 원하면 대신 이것을 사용하십시오.
cmd = meld "$REMOTE" "$LOCAL"
prompt = false 부분은 Git이 기본적으로 수행하는 시작 도구에 대한 확인을 요청하지 않도록 지시합니다.
git difftool 명령을 git diff 명령으로 실행할 수 있습니다.
$ git difftool <BranchName> file_name
Meld를 기본 Git Mergetool로 구성
Meld는 또한 GUI mergetool 덕분에 병합 중 충돌을 쉽게 해결할 수 있습니다. 다시 .gitconfig 파일을 변경하여 Meld를 Git용 mergetool로 구성합니다.
.gitconfig 파일에 아래 줄을 추가합니다.
[merge]
tool = meld
[mergetool "meld"]
# Choose one of these 2 lines
cmd = meld "$LOCAL" "$MERGED" "$REMOTE" --output "$MERGED"
cmd = meld "$LOCAL" "$BASE" "$REMOTE" --output "$MERGED"
병합 충돌이 발생하면 아래 명령을 실행하여 Meld를 mergetool로 사용할 수 있습니다.
$ git mergetool
위의 매개변수를 간단히 살펴보겠습니다.
$LOCAL- 체크아웃된 분기의 파일입니다.$REMOTE- 병합하려는 분기의 파일입니다.$MERGED- 병합 충돌이 있는 파일입니다.$BASE-$REMOTE가 포함된 분기를 만들 때의 원본 파일입니다.
$LOCAL 및 $REMOTE는 cmd의 순서에 따라 왼쪽과 오른쪽에 있으며 중간에 $BASE 또는 $MERGED가 있을 수 있습니다. Meld는 3방향 보기를 허용하며 충돌을 해결하려면 중간 파일을 편집해야 합니다.
편집 후 프로그램을 닫으면 Git이 파일을 자동으로 업데이트합니다. 이 시점에서 변경 사항을 커밋하고 병합을 마칠 준비가 되었습니다.
또는 Bash에서 몇 가지 명령을 실행하여 .gitconfig 파일을 업데이트할 수 있습니다.
Windows 사용자의 경우 다음 명령을 실행합니다.
$ git config --global diff.tool meld
$ git config --global difftool.meld.path "C:\Program Files (x86)\Meld\Meld.exe"
$ git config --global difftool.prompt false
$ git config --global merge.tool meld
$ git config --global mergetool.meld.path "C:\Program Files (x86)\Meld\Meld.exe"
$ git config --global mergetool.prompt false
MELD.exe 파일에 대한 올바른 경로를 입력했는지 확인하십시오.
Linux 사용자는 아래 명령을 사용하여 .gitconfig 파일을 업데이트할 수 있습니다.
$ git config --global diff.tool meld
$ git config --global difftool.meld.path "/usr/bin/meld"
$ git config --global difftool.prompt false
$ git config --global merge.tool meld
$ git config --global mergetool.meld.path "/usr/bin/meld"
$ git config --global mergetool.prompt false
컴퓨터의 올바른 설치 경로로 위의 코드를 업데이트하십시오.
간단히 말해서 Git의 원래 diff 및 merge 인터페이스는 매력적이지 않습니다. 그러나 Meld를 기본 GUI difftool 및 mergetool로 사용하도록 Git을 구성할 수 있습니다.
위 단계에 따라 .gitconfig 파일을 업데이트하기만 하면 됩니다.