git difftool-Befehl

Git-Grundoperationen


git difftoolDer Befehl wird verwendet, um Dateiänderungen mit einem externen Diff-Tool anzuzeigen und zu vergleichen.

git difftoolDieser Befehl ist eine Erweiterung des git diff-Befehls und bietet ein intuitiveres visuelles Werkzeug zum Auflösen von Unterschieden zwischen Dateien. Er eignet sich für Benutzer, die grafische Werkzeuge gegenüber Kommandozeilen-Tools bevorzugen, um Dateiunterschiede zu behandeln.

Grundlegende Syntax

git difftool [<options>] [<commit> [<path>...]]
  • <commit>Geben Sie den/die zu vergleichenden Commit(s) an; standardmäßig wird der aktuelle Zustand des Arbeitsverzeichnisses verwendet.
  • <path>Geben Sie den zu vergleichenden Dateipfad an.

Häufige Optionen und Verwendung:

OptionenBeschreibungVerwendungsbeispiel
--tool=<tool>Geben Sie das zu verwendende externe Diff-Tool an. Standardmäßig verwendet Git das konfigurierte Standard-Diff-Tool.git difftool --tool=meld
--tool-helpZeigen Sie die Liste der verfügbaren Diff-Tools an.git difftool --tool-help
--dir-diffVergleichen Sie Verzeichnisse statt Datei für Datei.git difftool --dir-diff
--no-promptÜberspringen Sie die Bestätigungsaufforderung für jede Datei und verwenden Sie automatisch das Tool, um die Unterschiede anzuzeigen.git difftool --no-prompt
--stagedVergleichen Sie die Unterschiede zwischen vorgemerkten Änderungen und dem vorherigen Commit.git difftool --staged
--cachedund--stagedWie oben; wird verwendet, um die Unterschiede zwischen zwischengespeicherten Änderungen und dem vorherigen Commit zu vergleichen.git difftool --cached
--mergeWird für Merge-Tools verwendet, um Unterschiede beim Behandeln von Konflikten anzuzeigen.git difftool --merge
--find-copiesNach Dateikopien und -verschiebungen suchen.git difftool --find-copies
--find-copies-harderStrenger nach Dateikopien und -verschiebungen suchen.git difftool --find-copies-harder

Häufige Verwendung

1. Unterschiede zwischen dem Arbeitsverzeichnis und dem letzten Commit anzeigen

Verwenden Sie das Standard-Diff-Tool, um die Unterschiede zwischen Änderungen im aktuellen Arbeitsverzeichnis und dem letzten Commit anzuzeigen:

git difftool

2. Die Unterschiede zwischen dem Staging-Bereich und dem letzten Commit anzeigen

Verwenden Sie das Standard-Diff-Tool, um die Unterschiede zwischen den Änderungen im Staging-Bereich und dem letzten Commit anzuzeigen:

git difftool --staged

3. Unterschiede für eine bestimmte Datei anzeigen

Verwenden Sie das Standard-Diff-Tool, um die Änderungen einer angegebenen Datei anzuzeigen:

git difftool <file>

Beispiel:

git difftool index.html

4. Unterschiede mit einem angegebenen Tool anzeigen

Verwenden Sie das meld-Tool, um Unterschiede anzuzeigen (erfordert, dass meld als Diff-Tool in der Git-Konfiguration festgelegt wird):

git difftool --tool=meld

5. Unterschiede im Verzeichnis anzeigen.

Änderungen in einem Verzeichnis statt Datei für Datei anzeigen:

git difftool --dir-diff

6. Die Bestätigungsaufforderung überspringen

Das Tool automatisch öffnen, um die Unterschiede aller Dateien ohne Bestätigung anzuzeigen:

git difftool --no-prompt

Ein externes Diff-Tool konfigurieren

Sie können das externe Diff-Tool in der Git-Konfiguration festlegen. Das folgende ist ein Beispiel für die Konfiguration des meld-Tools:

git config --global diff.tool meld
git config --global difftool.meld.cmd 'meld "$BASE" "$LOCAL" "$REMOTE" --diff "$MERGED"'

Sie können andere Tools nach Bedarf konfigurieren (wie kdiff3, vimdiff, opendiff usw.), und die konkrete Konfigurationsmethode hängt von der Kommandozeilenschnittstelle des Tools selbst ab.


Git-Grundoperationen

Weitere Erweiterungen