Sto cercando di personalizzare il formato per git log
. Voglio che tutti gli commit vengano mostrati in una riga. Ogni riga dovrebbe mostrare solo la prima riga del messaggio di commit.
Ho scoperto che git log --pretty=short
dovrebbe fare il trucco, ma sul mio computer mostra il registro completo come git log
fa (oltre al timestamp).
Inoltre, ho cercato di utilizzare i segnaposto come definito nella pagina man . Tuttavia, non sono riuscito a trovare un comando per abbreviare il messaggio di registro. Ho provato questa riga git log --pretty=format:'%h : %s'
che mostra l'hash in corto %h
e il messaggio completo %s
in una riga.
Sto usando git version 1.7.3.1.msysgit.0
su Vista.
Forse ha qualcosa a che fare con il modo in cui scrivo i miei messaggi di commit. Ecco un esempio:
Added some functionality.
+ Added print function in Foo class.
+ Added conversion from foo to baz.
Quindi, con l'esempio fornito, desidero solo l'output Added some functionality.
anteposto dall'hash di shortend.
short
formato non è tutto su una riga, sebbene (sorpresa!) Lo oneline
è. Se oneline
e %h : %s
non sei quello che vuoi, cosa c'è che non va in loro? In particolare, %s
è l'oggetto, la prima riga del messaggio di commit. Dovrebbe davvero essere una versione abbreviata. È possibile che tu abbia fatto dei commit con una sola lunga riga per il messaggio e che tu li abbia visualizzati in qualche modo con la parola a capo?
oneline
e %s
non lo fanno in uscita quello che ci aspettiamo, almeno sul mio computer. Ho aggiornato il mio post con un esempio del mio messaggio di commit. Forse aiuta.
%s
è l'oggetto, non il messaggio completo.