git log es generalmente el comando que se debe usar al examinar el historial de confirmaciones. git log --grep
se puede utilizar para buscar expresiones regulares en el mensaje de confirmación.
lo que está después es git log -S
el que busca el contenido comprometerse simplemente o git log -G
el que busca con una expresión regular:
-S buscar las diferencias que introducen o eliminar una instancia de. Tenga en cuenta que esto es diferente de la cadena que simplemente aparece en la salida de diff; ver la entrada de piquetas en gitdiffcore (7) para más detalles.
Así, por ejemplo, en el repositorio msysGit puedo encontrar el commit que introdujo Tcl 8.5.8 utilizando:
C:\src\msysgit\src>git log --oneline --grep "8\.5\.8"
d938476 Make `NO_SFX=1 portable-release.sh` work
ef1dc94 Update tk to version 8.5.8
a910049 Update tcl to version 8.5.8
a702d7f tcltk: update to 8.5.8 and exclude release.sh from the cleanup list
que acaba buscó 8.5.8 en los mensajes de cometer o como usted querer hacer mirando una cadena que sólo ocurrió en el diff comprometida:
C:\src\msysgit\src>git log --oneline -S"version=8.5.8"
7be8622 tcltk: update release.sh script for tcl/tk 8.5.9
a702d7f tcltk: update to 8.5.8 and exclude release.sh from the cleanup list
el rango limitante que tiene en su muestra todavía se puede utilizar para limitar los compromete a ser examinados. Lee cuidadosamente el manual de registro de git para tener una buena idea de todas las cosas que puede hacer.
Tenga en cuenta que sólo se ve -S
las diferencias de cuerdas simples - si realmente desea buscar en el contenido utilizando una expresión regular similar a la suya ejemplo, entonces debería usar la opción en lugar de -S
-G
pero esto será significativamente más lento.
posible duplicado de [¿Cómo grep (buscar) el historial de git?] (Http://stackoverflow.com/questions/2928584/how-to-grep-search-the-git-history) –
Hmm ninguno de esos Los comandos me dicen de qué revisión proviene el resultado de la búsqueda, solo el archivo que ocurrió en –
. Para mí, es el SHA antes del nombre del archivo en los resultados. Usé el primer comando en la primera respuesta. La [segunda respuesta] (http://stackoverflow.com/a/2928721/211563) probablemente sea más lo que está buscando, y eso también le da al SHA (siempre que su formato de registro lo muestre). –