ver tipos tag pendientes modificados log etiquetas crear commits archivos git version-control

tipos - Historial de Git: encuentra la línea perdida por palabra clave



git ver commits pendientes (2)

En el peor de los casos, ¿usar git bisect y grep ?

Tenía en algún lugar de mi repositorio de Git una línea que contenía la palabra "Foo", un par de cientos de confirmaciones antes.

¿Hay alguna forma de encontrar su número de revisión donde fue la última vez sin comprar FishEye?


Eso puede ser abordado por la opción de pico ( -S ) de gitlog

git log -SFoo -- path_containing_change

(Incluso puede agregar un intervalo de tiempo: --since=2009.1.1 --until=2010.1.1 )

-S<string>

Busque las diferencias que introducen o eliminan una instancia de <string> .
Tenga en cuenta que esto es diferente de la cadena que simplemente aparece en la salida de diff; ver la entrada de gitdiffcore(7) en gitdiffcore(7) para más detalles.

diffcore-pickaxe

Esta transformación se usa para encontrar pares de archivos que representan cambios que tocan una cadena especificada.
Cuando diffcore-pickaxe está en uso, comprueba si hay pares de archivos cuyo lado "original" tiene la cadena especificada y cuyo lado "resultado" no.
Tal par de archivos representa "la cadena apareció en este conjunto de cambios".
También comprueba el caso contrario que pierde la cadena especificada.

Actualización 2014:

Desde entonces, puedes hacer (desde la nilbus de nilbus ):

git log -p --all -S ''search string'' git log -p --all -G ''match regular expression''

Estos comandos de registro enumeran los commits que agregan o eliminan la cadena de búsqueda dada / regex, (generalmente) la más reciente primero.
La opción -p ( --patch ) hace que se muestre la diferencia relevante donde se agregó o quitó el patrón, para que pueda verlo en contexto.

Después de haber encontrado un compromiso relevante que agrega el texto que estabas buscando (por ejemplo, 8beeff00d ), busca las ramas que contienen la confirmación:

git branch -a --contains 8beeff00d

(Hace referencia al último comando en " ¿Cómo enumerar las ramas que contienen una confirmación determinada? ")