Antworten:
Geben Sie die Pfade explizit an:
git diff HEAD:full/path/to/foo full/path/to/bar
Überprüfen Sie die --find-renames
Option in den git-diff
Dokumenten .
Gutschrift: twaggs .
git diff <path> <path>
auch wenn sie sich nicht in einem Git-Repository befinden.
git diff --help
Sie sehen, dass die einzigen Muster, die für zwei Dateien unterstützt werden, sind git diff [<options>] --no-index [--] <path> <path>
. git diff a b
Entspricht nur Festschreibungsmustern, nicht Dateien.
--no-index
Option weglassen, wenn Sie den Befehl in einem von Git gesteuerten Arbeitsbaum ausführen und mindestens einer der Pfade außerhalb des Arbeitsbaums zeigt oder wenn Sie den Befehl außerhalb eines von Git gesteuerten Arbeitsbaums ausführen .
Ich glaube, mit --no-index
ist das, wonach Sie suchen:
git diff [<options>] --no-index [--] <path> <path>
wie im Git-Handbuch erwähnt:
In diesem Formular werden die beiden angegebenen Pfade im Dateisystem verglichen. Sie können die Option weglassen,
--no-index
wenn Sie den Befehl in einem von Git gesteuerten Arbeitsbaum ausführen und mindestens einer der Pfade außerhalb des Arbeitsbaums zeigt oder wenn Sie den Befehl außerhalb eines von Git gesteuerten Arbeitsbaums ausführen.
Wenn Sie Tortoise Git verwenden, können Sie mit der rechten Maustaste auf eine Datei klicken und einen Diff gitieren, indem Sie mit der rechten Maustaste auf die erste Datei klicken und im Untermenü Tortoisegit "Diff later" auswählen. In der zweiten Datei können Sie auch mit der rechten Maustaste darauf klicken Gehen Sie zum Untermenü Tortoisegit und wählen Sie "Diff with yourfilenamehere.txt".
Mit PhpStorm kopiere ich einfach den vorherigen Commit-Code und vergleiche ihn mit der aktuellen Version mit dem integrierten Tool "Mit Zwischenablage vergleichen".
git diff --no-index --word-diff old_file.txt new_file.txt
(--word-diff hebt Änderungen nach Wort hervor, nicht nur nach Zeile, was für Langtext sehr hilfreich ist).