En uno de nuestros proyectos, MysQL-Dumps se sincronizan con git. Un archivo para cada tabla en la base de datos. Después de extraer / fusionar, los volcados se importan a la base de datos local con un gancho. El problema ahora es que necesito encontrar todos los volcados de tabla que se modificaron con la extracción para importar solo estos. ¿Cómo puedo saber el enlace posterior a la fusión para saber qué archivos han cambiado? Posiblemente no sea solo una confirmación antes de que se fusione, por lo general, hay más confirmaciones.
¿Cómo puedo obtener una lista de archivos modificados?
La forma más fácil que encontré es
desde
HEAD@{n}
significa el enésimo valor anterior deHEAD
fuente
Solía
git reflog
justo despuésgit pull
de conseguir algo como:el SHA justo después de la lectura "pull: Fast-forward" es donde estabas antes del pull.
Después de eso, utilicé el
git diff --name-only SHA2
de la otra respuesta, que le dará una lista de archivos que se cambiaron de ese compromiso a su estado actual.No estoy 100% seguro de cómo funciona esto para los tirones con muchos cambios y fusiones, pero para un avance rápido simple funcionó muy bien.
fuente
HEAD@{0}
(o el que dice "pull: Fast-Forward") es el commit real, después del pull, ¡y no el anterior al pull!