2012-09-27 9 views
5

me encuentro haciendo git log --oneline muy a menudo para conseguir una mirada rápida a los cambios que estoy a punto de empujar a o fusionar desde el mando a distancia. ¿Es posible agregar algún identificador (como "[...]") para marcar ese mensaje de compromiso como uno de varias líneas, para que pueda saber que hay más información allí?Cómo hacer espectáculo 'git log --oneline' que practican los mensajes son multilínea

Básicamente, lo que quiero es éste:

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

Respuesta

6

Con la ayuda de Adam's answer, se me ocurrió una alternativa a mi requerimiento:

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

Esto es igual que --oneline, excepto que pone un salto de línea y el cuerpo del mensaje justo después del asunto del mensaje. Se ve mucho mejor con algunos colores:

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

Tenemos comentarios de líneas múltiples de forma predeterminada en el historial de confirmaciones. ¿Cómo obtengo la última línea de compromiso multilínea? –

2

Usted puede hacer esto con algunas secuencias de comandos. Hay un token de cuerpo de mensaje para el formato en el registro de git (%b).

Pero nada puede hacer eso en un comando: tiene que ver si el cuerpo del mensaje está vacío o no.

+0

Gracias por señalar el token para el cuerpo del mensaje. Para el registro, es '% b' – alextercete

+0

Agregando eso a la respuesta :) ¿no obtienes líneas en blanco? No se necesitan scripts entonces :) –

1

Me acostumbré a agregar manualmente "(s.b.)" para esto que significa "ver a continuación".

Puede usar un gancho prepare-commit-msg para anexarlo automáticamente si un mensaje de confirmación es multilínea.

+1

Realmente no quiero meterme con los mensajes de confirmación, solo es un requisito de visualización. – alextercete

Cuestiones relacionadas