Verwenden von git log
zum Vergleichen von Commits
Im vorherigen Schritt haben wir git status
verwendet, um zu prüfen, ob unser lokaler Branch hinter dem Remote-Branch zurückliegt. Jetzt verwenden wir git log
, um die tatsächlichen Commits anzuzeigen, die sich auf dem Remote-Branch, aber nicht auf unserem lokalen Branch befinden.
Der Befehl git log
ist äußerst vielseitig. Er ermöglicht es Ihnen, die Commit-Historie auf viele verschiedene Arten anzuzeigen. Um unseren lokalen Branch (HEAD
) mit dem Remote-Tracking-Branch (origin/master
) zu vergleichen, können wir die folgende Syntax verwenden:
git log HEAD..origin/master
Stellen Sie sicher, dass Sie sich im Verzeichnis ~/project/my-time-machine
befinden:
cd ~/project/my-time-machine
Jetzt führen Sie den git log
-Befehl aus, um die Branches zu vergleichen:
git log HEAD..origin/master
Wenn es Commits auf origin/master
gibt, die sich nicht auf Ihrem lokalen HEAD
(das derzeit auf Ihren lokalen master
-Branch zeigt) befinden, wird dieser Befehl diese Commits auflisten. Die Ausgabe zeigt die Commit-Details, einschließlich des Commit-Hashes, des Autors, des Datums und der Commit-Nachricht, für jeden Commit, der in origin/master
existiert, aber nicht in Ihrem aktuellen Branch.
Beispielsweise könnte die Ausgabe wie folgt aussehen, wenn es einen neuen Commit auf dem Remote gibt:
commit abcdef1234567890abcdef1234567890abcdef (origin/master)
Author: Another User <[email protected]>
Date: Tue Aug 8 10:00:00 2023 +0000
Add a new feature
Diese Ausgabe zeigt deutlich den Commit, der auf dem Remote, aber nicht lokal vorhanden ist. Die Syntax HEAD..origin/master
teilt Git mit, Commits anzuzeigen, die von origin/master
erreichbar, aber nicht von HEAD
sind.
Das Verwenden von git log
auf diese Weise ist ein leistungsstarkes Werkzeug, um die Unterschiede zwischen Branches zu verstehen und genau zu sehen, welche Änderungen Sie erhalten würden, wenn Sie Ihren lokalen Branch aktualisieren würden. Es liefert mehr Details als git status
über die spezifischen Commits, die die Abweichung verursachen.
Denken Sie daran, q
zu drücken, um die Log-Ansicht zu verlassen, wenn sie in einem Pager geöffnet wird.