3807 Stimmen

Sehen Sie sich die Änderungshistorie einer Datei unter Verwendung der Git-Versionierung an

Wie kann ich die Historie einer individuellen Datei mit vollständigen Details darüber, was geändert wurde, anzeigen?

git log -- [filename] zeigt mir die Commit-Historie einer Datei, aber wie kann ich den Dateiinhalt sehen, der geändert wurde?

6 Stimmen

Der obenstehende Link (veröffentlicht von Chris) ist nicht mehr gültig. Dieser Link funktioniert heute: git-scm.com/book/en/v2

2 Stimmen

@chris: Welchen Link meinst du? In einem mittlerweile gelöschten Kommentar?

9voto

Adi Shavit Punkte 15890

Wenn Sie die gesamte Historie einer Datei sehen möchten, einschließlich aller anderen Zweige, verwenden Sie:

gitk --all

8voto

cori Punkte 8388

Wenn Sie Git GUI verwenden (unter Windows):

Im Repository-Menü können Sie Die Historie des Hauptbranches visualisieren verwenden.

Markieren Sie einen Commit im oberen Bereich und eine Datei im unteren rechten Bereich, um die Änderungen für diesen Commit im unteren linken Bereich zu sehen.

3 Stimmen

Wie beantwortet das die Frage?

3 Stimmen

Nun, OP hat nicht die Befehlszeile angegeben, und wenn man sich von SourceSafe (das eine GUI ist) bewegt, schien es relevant darauf hinzuweisen, dass man mit der Git-GUI unter Windows im Grunde genommen dasselbe tun kann wie mit VSS.

7voto

PhiLho Punkte 39496

Mit den ausgezeichneten Git Extensions können Sie zu einem Zeitpunkt in der Geschichte gehen, an dem die Datei noch existierte (falls sie gelöscht wurde, ansonsten einfach zu HEAD gehen), zum Tab Dateibaum wechseln, mit der rechten Maustaste auf die Datei klicken und Dateiverlauf auswählen.

Standardmäßig folgt es den Dateinamenänderungen und der Tab Blame ermöglicht es, den Namen zu einem bestimmten Zeitpunkt zu sehen.

Es hat einige kleinere Schwierigkeiten, wie zum Beispiel die Anzeige von fatal: Kein gültiger Objektname im Tab Anzeigen, wenn auf die Löschrevision geklickt wird, aber damit kann ich leben. :-)

0 Stimmen

Wichtig ist zu beachten, dass dies nur für Windows gilt.

3 Stimmen

@EvanHahn nicht korrekt, über Mono kann man GitExtension auch auf Linux verwenden, wir benutzen es auf Ubuntu und sind ziemlich zufrieden damit. siehe git-extensions-documentation.readthedocs.org/en/latest/…

6voto

Malks Punkte 682

Die Antwort, nach der ich gesucht habe, war nicht hier. Es ging darum, Änderungen in Dateien zu sehen, die ich für den Commit vorgemerkt hatte. D.h.,

git diff --cached

1 Stimmen

Wenn Sie lokale (nicht gebufferte) Änderungen einschließen möchten, führe ich oft git diff origin/master aus, um die vollständigen Unterschiede zwischen Ihrem lokalen Zweig und dem Master-Zweig anzuzeigen (der von Remote über git fetch aktualisiert werden kann)

0 Stimmen

Und um dies auf eine bestimmte Datei zu beschränken, können Sie git diff --cached pfad/zur/datei.xml verwenden

6voto

Antonín Slejška Punkte 1882

SmartGit:

  1. Im Menü Änderungen anzeigen aktivieren: Ansicht / Unveränderte Dateien anzeigen
  2. Klicken Sie mit der rechten Maustaste auf die Datei und wählen Sie „Log“ oder drücken Sie „Strg-L“

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X