git -> muestra la lista de archivos modificados en confirmaciones recientes en un directorio específico

Respuestas:

164

Este es más similar al comando svn ya que muestra el estado del archivo: Agregado (A), Copiado (C), Eliminado (D), Modificado (M), Renombrado (R) y otros.

git log --name-status -10 path/to/dir

Vale la pena mirar la página de documentación completa para git log. Allí aprenderá que se -10refiere a las últimas 10 confirmaciones y -ple dará el parche completo, entre una variedad de otras ventajas.

htanata
fuente
12
Para completar: el conjunto de opciones similares comúnmente utilizado es -p(parche completo), --stat(número de líneas cambiadas), --numstat(como --statpero legible por máquina) --name-status, y --name-only(solo los nombres de archivo).
Cascabel
3
Para cualquiera que llegue a esta pregunta sin saberlo, el -10 se refiere al número de confirmaciones que desea que se muestren. Si necesita una lista completa de confirmaciones, intente hacer que el número sea inusualmente grande, como -1000 o más, según sea necesario.
Julian Soro
¿También es posible ver el historial desde una confirmación o etiqueta específica? Hace cientos de confirmaciones, así que tratando de contar eso ...
MrFox
2
@MrFox git log <from revision>.., p git log abc123... Ej . Lea más sobre el formato de rango aquí: kernel.org/pub/software/scm/git/docs/…
htanata
37

Para mostrar todos los archivos modificados en las últimas 10 confirmaciones, sin ninguna información de confirmación, haga lo siguiente:

git diff --name-only HEAD~10..HEAD yourdir
dbn
fuente
3
Solución perfecta para reabrir archivos en su editor.
cdosborn
1
Esta solución enumera solo las rutas de archivo, sin comentarios, lo que se agradece mucho más que la respuesta aceptada. Si todo lo que desea es una lista de los archivos que han cambiado en las confirmaciones especificadas, y esta solución hace precisamente eso .
Big Rich
6

Intenta hacerlo

git log -p -10 yourdir/

Deberia de funcionar.

azul112
fuente
1
El OP solicitó una lista de archivos modificados, no el parche completo.
Cascabel
1
Si desea cambiar la lista de archivos, puede hacer --stat en lugar de -p
blue112
1

Para mostrar todos los commitde su rama (reciente y antigua), debe contar el número de confirmaciones en la rama

git rev-list --count branch_name

Una vez que obtenga todo el recuento de confirmaciones, puede ejecutar

git log --name-status -countNumber /path
Sayan Biswas
fuente
Y se puede simplificar la vista agregando la --pretty=onelineopción al git logcomando anterior. Agregar un | sort | uniqcomando ayudará a uno a ver el etiquetado de estado A / C / D / M / R según la respuesta de
htanata