Einrichten des SourceGear DiffMerge-Tools für Git
-
Richten Sie
DiffMerge
unter Windows ein -
Richten Sie
DiffMerge
auf Mac OS ein -
Einrichten von
DiffMerge
auf Ubuntu
In diesem Artikel wird die Konfiguration von Git zur Verwendung von SourceGears DiffMerge
als Standard difftool
besprochen. Dieses Tool ermöglicht es uns, Merge-Konflikte mit verbesserter Grafik im Vergleich zu Gits Standard difftool
leicht zu verstehen.
Es ist das ideale Werkzeug für eine 3-Wege-Zusammenführung, da es den 3-Wege-Dateivergleich unterstützt.
Wir können den vorherigen Status einer Datei, den aktuellen Status und das Ergebnis nach einer Zusammenführung anzeigen. Sie müssen DiffMerge
von der offiziellen Website von SourceGear herunterladen und installieren.
Richten Sie DiffMerge
unter Windows ein
Um Git so einzurichten, dass es standardmäßig das DiffMerge
-Tool verwendet, fügen Sie dies zu Ihrer .gitconfig
-Datei hinzu.
[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
Für die Parameter des Vergleichsarguments haben wir:
$LOCAL
, das ist die Originaldatei.$REMOTE
, das ist die geänderte Datei.
Sie können die Befehle git difftool
und git mergetool
auf Git Bash ausführen, um DiffMerge
zu öffnen.
Alternativ können Sie die folgenden Befehle an Ihrer Eingabeaufforderung ausführen, um die Datei .gitconfig
zu aktualisieren.
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\""
Richten Sie DiffMerge
auf Mac OS ein
Der Prozess der Konfiguration von Git für die Verwendung von DiffMerge
unter Mac OS ist vielleicht der einfachste. Stellen Sie sicher, dass Sie das folgende Verzeichnis haben.
/usr/local/bin/diffmerge
Führen Sie die folgenden Befehle aus, um Ihre .gitconfig
-Datei zu aktualisieren und zu testen.
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\""
Wir können den Befehl git config --global -e
ausführen, um unsere .gitconfig
-Datei zu inspizieren. Es sollte etwa so aussehen:
[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\"
Einrichten von DiffMerge
auf Ubuntu
Die Konfiguration unter Ubuntu ist der von Mac OS sehr ähnlich. Wir werden dieselben Befehle verwenden, aber den Installationsort ändern.
Hier sind die Befehle.
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\""
Das wars so ziemlich. Wir können jetzt die folgenden Befehle ausführen, um es zu testen.
$ git mergetool
$ git difftool
Zusammenfassend lässt sich sagen, dass Sie, wenn Sie Git für die Verwendung des Tools DiffMerge
von SourceGear konfigurieren möchten, Ihre .gitconfig
-Datei mit den aufgelisteten Befehlen basierend auf Ihrem Betriebssystem aktualisieren müssen.
John is a Git and PowerShell geek. He uses his expertise in the version control system to help businesses manage their source code. According to him, Shell scripting is the number one choice for automating the management of systems.
LinkedIn