tipos tag qué log existen etiquetas crear git rename file-listing

tag - En Git, ¿cómo obtengo una lista detallada de cambios de archivos de una revisión a otra?



qué tipos de etiquetas existen en git (2)

Creo que `` mostrará esa información

git diff -M -C --stat

Utilizo un repositorio Git en mi servidor para la versión de los archivos de datos de usuario enviados al servidor. Estoy interesado en obtener una lista de archivos modificados entre dos revisiones.

Sé sobre git diff --name-only <rev1> <rev2> , pero esto solo me da una lista de nombres de archivos. También estoy especialmente interesado en renombrar y copiar. Idealmente, la salida sería algo como esto:

updated: userData.txt renamed: picture.jpg -> background.jpg copied: song.mp3 -> song.mp3.bkp

¿Es posible? --name-status tampoco parece indicar renombramientos y copias.


git diff --name-status -C <rev1> <rev2>

Debería estar más cerca de lo que está buscando.

--name-status mostraría los nombres de los archivos y sus respectivos estados:

(A|C|D|M|R|T|U|X|B)

Agregado (A), Copiado (C), Eliminado (D), Modificado (M), Renombrado (R),
tipo (es decir, archivo regular, enlace simbólico, submódulo, ...) cambiado (T),
Sin fusionar (U), Desconocido (X) o emparejamiento roto (B)

(A lo que el añade:

Las letras de estado R y C "siempre van seguidas de una puntuación que denota el porcentaje de similitud entre el origen y el objetivo del movimiento o la copia, y son las únicas que lo son".)

Respecto a los archivos copiados o movidos:

-C[<n>] --find-copies[=<n>]

Detectar copias así como renombrarlas. Si se especifica n , tiene el mismo significado que para -M<n> .

--find-copies-harder

Por razones de rendimiento, de forma predeterminada, la opción -C encuentra copias solo si el archivo original de la copia se modificó en el mismo conjunto de cambios.
Este indicador hace que el comando inspeccione los archivos no modificados como candidatos para el origen de la copia.
Esta es una operación muy costosa para proyectos grandes, así que úsela con precaución. Dar más de una opción -C tiene el mismo efecto.

brauliobo recomienda en los comentarios :

git diff --stat -C git show --stat -C git log --stat -C