webentwicklung-frage-antwort-db.com.de

Wie kann ich das Protokoll für einen anderen als den aktuellen Zweig drucken?

Ich bin in einem Zweig mit einigen Änderungen. Das Wechseln des Zweigs ist mühsam, da einige Dateien von Prozessen gesperrt werden. Um den Zweig zu wechseln, müssten alle gesperrten Prozesse gestoppt und dann stash die Änderungen vorgenommen werden, bevor der andere Zweig ausgecheckt wird, um sein Protokoll anzuzeigen.

Ist es möglich, das Protokoll für einen anderen Zweig anzuzeigen, ohne es auschecken zu müssen?

51
BanksySan

TL; DR

Verwenden

git log <branch>

dabei ist <branch> der Name des gewünschten Zweigs.

Aus der Manpage git-log ...

Eine vereinfachte Version der git-log - Zusammenfassung in der Manpage dieses Befehls ist

git log [<revision range>]

Weiter unten finden Sie die folgende Passage:

Wenn kein <revision range> Angegeben wird, ist der Standardwert HEAD (d. H. Der gesamte Verlauf, der zum aktuellen Commit führt).

Mit anderen Worten, git log Entspricht git log HEAD. Wenn Sie sich in einem Zweig namens mybranch befinden, entspricht dieser Befehl beispielsweise auch git log mybranch.

Sie möchten das Protokoll auf Commits beschränken, die von einem anderen Zweig aus erreichbar sind, d. H. Von einem Zweig, in dem Sie sich gerade nicht befinden. Am einfachsten ist es, den Namen des gewünschten Zweigs explizit an git log Zu übergeben:

git log <branchname>

Weitere Informationen zu den vielen Formen, die das Argument <revision-range> Annehmen kann, finden Sie auf der Hilfeseite gitrevisions .

75
jub0bs