¿Cómo leer el último comentario de confirmación?


401

A menudo, durante un commit ( $ git -commit -m ""), deseo leer mi último comentario para recordar el progreso que he realizado. ¿Hay una manera fácil de acceder directamente al último mensaje de confirmación a través de la línea de comandos? (Estoy usando Windows).


66
Si es una acción regular, haga un alias(por ejemplo wherewasi;-) para la solución / línea de comando elegida. También puede incluir la información de la sucursal.
Philip Oakley

Respuestas:


756
git show

es el más rápido de escribir, pero también muestra la diferencia.

git log -1

Es rápido y sencillo.

git log -1 --pretty=%B

si solo necesita el mensaje de confirmación y nada más.


2
el formato% B era lo que necesitaba para no sangrar el mensaje de confirmación. Y sí, @Juh_, a pesar de que git gui no se ajusta en línea para usted, es una buena idea usar el texto de 80 columnas en los mensajes de confirmación, no línea por párrafo.
Peter Cordes

44
@Juh_ Puedes mostrar el mensaje completo usando git log -1 --pretty=%B | cat, pero como dijo Peter, debes tratar de mantenerlo en 80 caracteres.
Ruckus T-Boom

3
@Juh_ esto es demasiado tarde, pero si desea que el mensaje de confirmación se ajuste a la línea, simplemente catgit log -1 --pretty= | cat
canalice

8
Alguien que busca más información sobre los marcadores de posición porcentuales, consulte: kernel.org/pub/software/scm/git/docs/… (desplácese hacia abajo hasta format:<string>).
Imme

3
Si agrega el format:prefijo al %Bsugerido en los documentos man, no mostrará líneas en blanco adicionales al final de la salida:git log -1 --pretty=format:%B
Mariano Ruiz

84

Generalmente:

git log -n

le mostrará los últimos nmensajes de confirmación

Más elegante: si desea una visión general rápida de sus confirmaciones

git log --oneline -n

Esto mostrará solo la primera línea de los últimos nmensajes de confirmación.

Puede guardar esto como un alias git o un alias de shell con un comando más corto. Lo tengo en mi shell como glog, por ejemplo, y puedo ver mis últimos 10 mensajes de confirmación con glog -10.


23

git log -1mostrará el último mensaje de confirmación o git log -1 --onelinesi solo desea que se muestren el sha1 y el mensaje de confirmación asociado.


¿Qué pasa con lo mismo en mercurial?
Nevin Raj Victor

14

Puedes usar

git show -s --format=%s

Aquí --formathabilita varias opciones de impresión, consulte la documentación aquí . Específicamente, %ssignifica 'sujeto'. Además, -ssignifica --no-patch, que suprime el contenido de diferencias.

A menudo uso

git show -s --format='%h %s'

donde %hdenota un hash corto del commit

Otra forma es

git show-branch --no-name HEAD

Parece correr más rápido que a la inversa.

De hecho, escribí una pequeña herramienta para ver el estado de todos mis repositorios. Lo puedes encontrar en github .


OMI, esto es mejor que la respuesta aceptada para múltiples confirmaciones. No produce saltos de línea innecesarios para mí. Las confirmaciones múltiples (es decir, las últimas 5) se pueden mostrar incluyendo -5, es decirgit show -s --format=%s -5
Sigmatics el

10

git log -1 branch_name le mostrará el último mensaje de la rama especificada (es decir, no necesariamente la rama en la que se encuentra actualmente).


7

Para algo un poco más legible, ejecute este comando una vez:

git config --global alias.lg "log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit --date=relative"

para que cuando corras:

git lg

obtienes una buena lectura. Para mostrar solo la última línea:

git lg -1

Solución encontrada aquí


4

Para empezar git log -1 --pretty='%s'

Pero el siguiente cubre todos los casos,

git log --pretty='format:%Creset%s' --no-merges -1

  • No hay espacios en blanco no deseados
  • Descarta merge commits
  • Sin ID de compromiso, fecha, Muestra solo los mensajes.

Pegar y ver por ti mismo



0

Acabo de encontrar una solución alternativa con shell recuperando el comando anterior.

Presione Ctrl-R para que aparezca el comando de búsqueda inversa:

reverse-i-search

Luego comience a escribir git commit -m , esto agregará esto como comando de búsqueda, y esto trae el git commit anterior con su mensaje:

reverse-i-search`git commit -m`: git commit -m "message"

Entrar. ¡Eso es!

(Probado en Ubuntu Shell)

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.