Einrichten des SourceGear DiffMerge-Tools für Git

John Wachira 18 August 2022
  1. Richten Sie DiffMerge unter Windows ein
  2. Richten Sie DiffMerge auf Mac OS ein
  3. Einrichten von DiffMerge auf Ubuntu
Einrichten des SourceGear DiffMerge-Tools für Git

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:

  1. $LOCAL, das ist die Originaldatei.
  2. $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 Wachira avatar John Wachira avatar

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

Verwandter Artikel - Git Diff