1309 votos

Lista de todos los archivos para un commit Git

Necesito escribir una secuencia de comandos que recupera todos los archivos que estaban comprometidos para un determinado SHA1. Tengo dificultad para conseguir un buen formato de la lista de todos los archivos que fueron parte de la confirmación.

He intentado:

git show a303aa90779efdd2f6b9d90693e2cbbbe4613c1d

Aunque las listas de los archivos también incluye adicionales diff información que no necesito.

Yo soy la esperanza que hay es un simple comando Git que va a proporcionar una lista sin mí tener que analizar desde el comando de arriba.

1671voto

Ryan McGeary Puntos 76053

Una manera (de preferencia):

$ git diff-tree --no-commit-id --name-only -r bd61ad98
index.html
javascript/application.js
javascript/ie6.js

De otra manera:

$ git show --pretty="format:" --name-only bd61ad98

index.html
javascript/application.js
javascript/ie6.js
  • La --no-commit-id suprime la confirmación de ID de salida.
  • La --pretty argumento especifica un vacío en el formato de cadena para evitar que el resto en el principio.
  • La --name-only argumento muestra sólo los nombres de archivo que se han visto afectados (Gracias Hank).

123voto

Jakub Narębski Puntos 87537

Si desea obtener la lista de archivos modificados:

git diff-tree --no-commit-id --name-only -r <commit-ish>

Si desea obtener la lista de todos los archivos en un commit, puede utilizar

git ls-tree --name-only -r <commit-ish>

98voto

Hank Gay Puntos 36173

Voy a asumir que gitk no es deseado por este. En ese caso, intente git show --name-only <sha>.

42voto

lunohodov Puntos 1171

Recientemente tuve que lista todos los archivos que han cambiado entre los dos comete. Así que he usado este (también en *nix específicos) comando

git show --pretty="format:" --name-only START_COMMIT..END_COMMIT | sort | uniq

19voto

Pat Notz Puntos 46841
$ git log 88ee8^..88ee8 --nombre-sólo --pretty="formato:"

Iteramos.com

Iteramos es una comunidad de desarrolladores que busca expandir el conocimiento de la programación mas allá del inglés.
Tenemos una gran cantidad de contenido, y también puedes hacer tus propias preguntas o resolver las de los demás.

Powered by:

X