Cómo crear un archivo de los cambios realizados con Git

21/06/2012

El comando git archive permite crear un archivo en zip o en tar de un determinado commit. Pero a veces es necesario distribuir un update, como si fuese un patch pero que contenga todos los archivos que han cambiado. Para hacerlo se puede usar el siguiente comando:

git archive -o update.zip HEAD $(git diff --name-only HEAD^)

Básicamente consiste en que git archive permite que se le especifiquen la lista de ficheros a incluir, y por otra parte, git diff tiene el parámetro --name-only que permite listar los ficheros que han cambiado en un commit.