Hoy temprano descubrí que faltaba algún código de mi repositorio de git. Sabía algo del texto que faltaba, y el archivo en el que estaba, así que usé git log -S'missingtext' /path/to/file
. Sin embargo, lo único que regresó fue la confirmación en la que agregué la línea que contenía el texto faltante. El texto no estaba presente en HEAD, y la confirmación que lo agregaba estaba presente en mi rama, así que sabía que uno de los commits en el historial de mi sucursal debía haberlo eliminado, pero no aparecía.Buscar cuando se borró la línea
Después de algunas búsquedas manuales, resultó que la línea se eliminó accidentalmente mientras se resolvía un conflicto para una combinación. Así que me pregunto:
- ¿Es este el motivo por el cual el pico no pudo encontrar el compromiso que borró la línea?
- ¿Cómo pude haber encontrado donde se eliminó "missingtext" sin buscar el historial manualmente?
Cualquier penetración en el # 1 sería genial (I supone que git log -S
me daría mi respuesta), pero mi verdadera pregunta es # 2, ya que me gustaría ser capaz de evitar esto en el futuro.
'-p' git log y'/missingtext' mientras que en 'less' es una 'n' manera sucia rápida de hacer esto. – nneonneo
Posible duplicado de [¿Cómo "culpo" a una línea eliminada] (http://stackoverflow.com/questions/4404444/how-do-i-blame-a-deleted-line) – hypehuman