2012-09-27 3 views
5

finde ich mich git log --oneline ziemlich oft tun einen schnellen Blick auf Veränderungen zu bekommen Ich bin über - oder fusionieren von der Fernbedienung zu drücken. Ist es möglich, einen Bezeichner (wie "[...]") anzuhängen, um diese Übermittlungsnachricht als mehrzeilige zu markieren, damit ich weiß, dass dort mehr Informationen vorhanden sind?Wie ‚git log --oneline‘ Show zu machen, die Nachrichten zu begehen sind mehrzeilige

Im Grunde, was ich will, ist dies:

e1140de Some commit message 
d1f58d1 Some multine commit message [...] 
736f778 Some other commit message 

Antwort

6

Mit Hilfe Adam's answer, kam ich mit einer Alternative zu meiner Forderung auf:

git log --format="%h %s%n%b" 

Das ist wie --oneline, außer es eine Zeilenumbruch und den Nachrichtentext nur nach dem Betreff Nachricht bringt. Es sieht viel besser mit einigen Färbung:

git log --format="%C(yellow)%h%Creset %Cgreen%s%Creset%n%b" 
+0

Wir haben standardmäßig mehrzeilige Kommentare im Commit-Verlauf. Wie bekomme ich die letzte Zeile des Multiline-Commits? –

2

Sie dies mit einigem Scripting tun können. Es gibt einen Nachrichtentext für das Format in git log (%b).

Aber nichts kann das in einem Befehl tun: Sie müssen sehen, ob der Nachrichtentext leer ist oder nicht.

+0

Vielen Dank für das Hinweis auf das Token für den Nachrichtentext. Für den Datensatz ist es "% b" – alextercete

+0

Hinzufügen, dass die Antwort :) Sie nicht leere Zeilen bekommen? Kein Skript benötigt dann :) –

1

Ich habe mich daran gewöhnt, "(s.b.)" manuell anzuhängen, was für "siehe unten" steht.

Sie können einen prepare-commit-msg-Hook verwenden, um ihn automatisch anzufügen, wenn eine Commit-Nachricht multiline ist.

+1

Ich möchte nicht wirklich mit den Commit-Nachrichten durcheinander bringen, es ist nur eine Visualisierungsanforderung. – alextercete