Obtener nombres de todos los files modificados en el logging de un file

¿Cómo obtengo los nombres de todos los files modificados de una confirmación a pesar de especificar un solo file en la línea de command?

Por ejemplo, si hago un git log --name-only en todo el repository, obtendré un log como este:

 commit abc... HEAD Author: Joseph Blow Date: Tue Feb 30 ... Very important Change afile.c anotherfile.c 

Pero si hago esto: git log --name-only afile.c , entonces obtengo esto:

 commit abc... HEAD Author: Joseph Blow Date: Tue Feb 30 ... Very important Change afile.c 

A pesar de especificar un file, quiero ver todos los files que fueron modificados con esa confirmación.

[edit] La muestra es solo uno de los muchos posts de confirmación en la salida.

git log --name-only --full-diff afile.c

A pesar del nombre, esto no mostrará una diferencia completa, sino que significa "considerar todos los files, no solo los especificados".

En git, esto se puede hacer en dos commands. Después de haber hecho el git log para encontrar el sha1, puede usar git show --name-only <sha1> para get los nombres de los otros files en ese commit.

Puede fusionar git log con git show para hacer eso en una línea;)

 git show --name-only $(git log --format=%H -- afile.c) 

Git show acepta una list de hash como argumento y git log con --format=%H genera una list de hash que involucra afile.c commits, luego esta list se usa como input para git show.

Espero que eso ayude: D