gitDas Diff ist funktionaler als das Standard-Unix diff. Ich möchte dies oft tun und da diese Frage bei Google einen hohen Stellenwert hat, möchte ich, dass diese Antwort angezeigt wird.
Zeigt, wie Sie git verwenden, um Dateien zu unterscheiden, bei denen sich mindestens eine davon nicht im Repository befindet. Verwenden Sie dazu --no-index:
git diff --no-index file1.txt file2.txt
Es spielt keine Rolle, welches von git verfolgt wird und welches nicht - eines oder beide können nicht verfolgt werden, z.
$ date > x
$ sleep 2
$ date > y
$ git diff --color-words --no-index x y
diff --git a/x b/y
index 6b10c7c..70f036c 100644
--- a/x
+++ a/y
@@ -1 + 1 @@
Wed Jun 10 10:57:45|10:57:47 EDT 2013
Die Farbe kann hier nicht angezeigt werden, daher habe ich die Änderungen im Beispiel durch eine Pipe getrennt.
Wenn Sie dieses Verhalten als Standard festlegen möchten, können Sie Ihrer .bashrcDatei (oder was auch immer Sie verwenden) einen Alias hinzufügen :alias diff="git diff --no-index"
Counterbeing
1
Zu Ihrer Information: Unter Git für Windows gab es einen Fehler (# 2123), dass "--no-index" nicht beachtet wurde. Dies wurde in Git für Windows v2.21.0 (26. Februar 2019) behoben.
StackzOfZtuff
Was bedeutet Zeile "Index 6b10c7c..70f036c 100644"? Ich vergleiche 2 Binärdateien, sie unterscheiden sich, aber das ist die einzige Zeile mit Unterschied ...
Lukas Salich
hi @LukasSalich es sieht so aus, als ob das Zeilenformat von git dokumentiert werden könnte (zB: git-scm.com/docs/diff-format ) , die beiden SHAs, bei denen eine Änderung festgestellt wurde, und dann die Berechtigungen der Datei.
Kyle Burton
3
diff -u
gibt gits diff eine ähnliche einheitliche Kontextausgabe.
--patience
Flagge verwenden wollte? Kennen Sie einen Diff (1) , der das kann?Antworten:
git
Das Diff ist funktionaler als das Standard-Unixdiff
. Ich möchte dies oft tun und da diese Frage bei Google einen hohen Stellenwert hat, möchte ich, dass diese Antwort angezeigt wird.Diese Frage: Wie verwende
git diff --color-words
ich außerhalb eines Git-Repositorys?Zeigt, wie Sie git verwenden, um Dateien zu unterscheiden, bei denen sich mindestens eine davon nicht im Repository befindet. Verwenden Sie dazu
--no-index
:Es spielt keine Rolle, welches von git verfolgt wird und welches nicht - eines oder beide können nicht verfolgt werden, z.
Die Farbe kann hier nicht angezeigt werden, daher habe ich die Änderungen im Beispiel durch eine Pipe getrennt.
quelle
.bashrc
Datei (oder was auch immer Sie verwenden) einen Alias hinzufügen :alias diff="git diff --no-index"
diff -u
gibt gits diff eine ähnliche einheitliche Kontextausgabe.
quelle
git diff --word-diff
).Verwenden Sie einfach den Befehl diff:
quelle