Ich weiß, dass ich den git diff
Befehl verwenden kann, um die Änderungen zu überprüfen, aber soweit ich verstanden habe, ist er verzeichnisbasiert. Dies bedeutet, dass alle Änderungen aller Dateien im aktuellen Verzeichnis angezeigt werden.
Wie kann ich nur die Änderungen in einer bestimmten Datei überprüfen? Sprich, ich habe geänderte Dateien file_1.rb
, file_2.rb
..., file_N.rb
aber ich bin nur in den Änderungen in der Datei interessiert file_2.rb
. Wie überprüfe ich diese Änderungen dann (bevor ich sie festschreibe)?
Antworten:
Verwenden Sie einen Befehl wie:
In der
git diff
Dokumentation finden Sie ausführliche Informationen zu den Dingen, für die Sie Unterschiede erhalten können.Normalerweise
git diff
werden alle Änderungen im gesamten Repository (nicht nur im aktuellen Verzeichnis) angezeigt.quelle
Eine andere Methode (in dieser SO-Antwort erwähnt ) speichert den Verlauf im Terminal und gibt Ihnen einen sehr tiefen Überblick über die Datei selbst:
git log --follow -p -- file
quelle
Sie können verwenden
gitk [filename]
, um das Änderungsprotokoll anzuzeigenquelle
Mit dem folgenden Befehl können Sie sehen, wer was in einer Datei geändert hat.
git blame <filename>
quelle
git blame <filename> | grep <searchfor>
wo<searchfor>
ein kurzer Wert ist. Um beispielsweise herauszufinden, werfoo
zubar
in gewechselt hatdist/index.php
, würden Siegit blame dist/index.php | grep bar
Sie können ausführen
Daraufhin wird der geänderte Dateiname angezeigt. Durch Kopieren des gewünschten Dateipfads können Sie Änderungen mit anzeigen
git diff
quelle
um nur Commits-Details für bestimmte Dateiänderungen aufzulisten,
um Unterschiede zwischen verschiedenen Commits für dieselbe Datei aufzulisten,
nur Commit und seine Nachricht aufzulisten,
quelle
Sie können es auch versuchen
Bei Commits zeigt git show die Protokollnachricht und den Textunterschied (zwischen Ihrer Datei und der festgeschriebenen Version der Datei) an.
Weitere Informationen finden Sie unter git show Documentation .
quelle
Oder wenn Sie lieber Ihr eigenes GUI-Tool verwenden möchten:
Sie können Ihr GUI-Tool so einstellen, dass es von diesem Beitrag geleitet wird: Wie kann ich die Ausgabe von 'git diff' mit einem visuellen Diff-Programm anzeigen?
quelle
Stimme @Greg Hewgill voll und ganz zu
Wenn Ihr Pfad Leerzeichen enthält, können Sie versuchen, ihn mit Apostroph
'
oder ` hinzuzufügengit diff 'MeinProjekt / Mein Ordner / Mein Unterordner / file_2.rb'
quelle