Ficheros modificados entre dos commits con GIT

git.jpg
Solucionex
15
Dic 15

Hola, hoy os voy a contar como hago cuando necesito saber que ficheros se han modificado entre dos commit en un repositorio GIT.

Esto es muy sencillo utilizando el comando diff, podemos hacerlo de la siguiente forma:

git diff --name-only SHA1 SHA2

Con el comando anterior sacamos un listado de los nombre de los ficheros que hemos modificado entre los commit SHA1 y SHA2, también podríamos indicar nombres de ramas o tags.

Pero podemos hacer mas cosas, imaginaros que necesitamos obtener un fichero zip con los ficheros físicos que nos devuelve el comando anterior, manteniendo la estructura de carpetas original. Podemos utilizar el siguiente comando:

git archive --output=file.zip HEAD $(git diff --name-only SHA1 SHA2)

Esto podéis aplicarlo en proyectos que no tienen control de versiones o vuestro cliente no os puede dar acceso. En los caso que me ha tocado yo me creo un repositorio privado donde trabajo cómodamente con GIT y cuando tengo que enviar cambios, utilizo el comando anterior para enviar solo los ficheros que yo he modificado.

Espero que os sirva de ayuda :)