Nachdem ich mir einige andere externe Diff-Tools angesehen hatte, stellte ich fest, dass die diff
Ansicht in IntelliJ IDEA (und Android Studio) ist für mich die beste.
Schritt 1 - Einrichten von IntelliJ IDEA für die Ausführung über die Befehlszeile
Wenn Sie IntelliJ IDEA als Diff-Tool verwenden möchten, sollten Sie zunächst IntelliJ IDEA so einrichten, dass es von der Kommandozeile aus ausgeführt werden kann. Folgen Sie dazu den Anweisungen aquí :
Unter macOS oder UNIX:
- Stellen Sie sicher, dass IntelliJ IDEA gestartet ist.
- Wählen Sie im Hauptmenü
Tools | Create Command-line Launcher
. Es öffnet sich das Dialogfeld Startskript erstellen mit dem vorgeschlagenen Pfad und Namen des Startskripts. Sie können den Vorschlag akzeptieren oder Ihren eigenen Pfad angeben. Notieren Sie sich diesen, da Sie ihn später benötigen werden. Außerhalb von IntelliJ IDEA fügen Sie den Pfad und den Namen des Startskripts zu Ihrem Pfad hinzu.
Unter Windows:
- Geben Sie den Speicherort der ausführbaren IntelliJ IDEA-Datei in der Systemumgebungsvariablen Path an. In diesem Fall können Sie die ausführbare IntelliJ IDEA-Datei und andere IntelliJ IDEA-Befehle von jedem Verzeichnis aus aufrufen.
Schritt 2 - git so konfigurieren, dass IntelliJ IDEA als Difftool verwendet wird
Befolgen Sie die Anweisungen auf dieser Blogbeitrag :
Bash
export INTELLIJ_HOME /Applications/IntelliJ\ IDEA\ CE.app/Contents/MacOS
PATH=$IDEA_HOME $PATH
Fisch
set INTELLIJ_HOME /Applications/IntelliJ\ IDEA\ CE.app/Contents/MacOS
set PATH $INTELLIJ_HOME $PATH
Fügen Sie nun Folgendes zu Ihrer Git-Konfiguration hinzu:
[merge]
tool = intellij
[mergetool "intellij"]
cmd = idea merge $(cd $(dirname "$LOCAL") && pwd)/$(basename "$LOCAL") $(cd $(dirname "$REMOTE") && pwd)/$(basename "$REMOTE") $(cd $(dirname "$BASE") && pwd)/$(basename "$BASE") $(cd $(dirname "$MERGED") && pwd)/$(basename "$MERGED")
trustExitCode = true
[diff]
tool = intellij
[difftool "intellij"]
cmd = idea diff $(cd $(dirname "$LOCAL") && pwd)/$(basename "$LOCAL") $(cd $(dirname "$REMOTE") && pwd)/$(basename "$REMOTE")
Sie können es ausprobieren mit git difftool
o git difftool HEAD~1
120 Stimmen
In allen neueren Versionen von git können Sie "git difftool" statt "git diff" verwenden. Damit wird ein visuelles Diff-Programm geöffnet.
0 Stimmen
Bezüglich des neuen Skripts difftool habe ich unten eine Antwort hinzugefügt: stackoverflow.com/questions/255202/
2 Stimmen
Gitx - gitx.frim.nl . Das war's.
1 Stimmen
Eine kurze Anleitung finden Sie hier: nathanhoad.net/how-to-meld-for-git-diffs-in-ubuntu-hardy
0 Stimmen
git difftool -tool=opendiff
einfach ersetzenopendiff
mit was auch immer.6 Stimmen
Rufen Sie Ihr Repository in Git Bash auf. Geben Sie ein.
git config diff.tool winmerge
. Überprüfen Sie, ob es funktioniert, indem Sie Folgendes eingebengit difftool
. Beseitigen Sie die Eingabeaufforderung, indem Siegit config --global difftool.prompt false
. Ich empfehle p4merge anstelle von winmerge.0 Stimmen
(1.) zur Auflistung der unterstützten externen Diff-Tools tun
git difftool --tool-help
(2.) mit einem speziellen Diff-Tool zu öffnen wievimdiff
einfach tungit difftool --tool=vimdiff
. Dies ist eine Zusammenfassung von die Lösung, geschrieben von @JakubNarebski