Buscar..
Sintaxis
- culpa git [nombre de archivo]
- git blame [-f] [- e] [- w] [nombre de archivo]
- git blame [-L range] [nombre de archivo]
Parámetros
Parámetro | Detalles |
---|---|
nombre del archivo | Nombre del archivo para el que se deben verificar los detalles. |
-F | Mostrar el nombre del archivo en la confirmación de origen. |
-mi | Mostrar el correo electrónico del autor en lugar del nombre del autor |
-w | Ignore los espacios en blanco al hacer una comparación entre la versión infantil y la versión primaria |
-L comienzo, final | Mostrar solo el rango de línea dado Ejemplo: git blame -L 1,2 [filename] |
--show-stats | Muestra estadísticas adicionales al final de la salida de la culpa. |
-l | Mostrar revoluciones largas (Predeterminado: desactivado) |
-t | Mostrar marca de tiempo sin procesar (Valor predeterminado: desactivado) |
-marcha atrás | Camina la historia hacia adelante en lugar de hacia atrás |
-p, --porcelana | Salida para el consumo de la máquina. |
-METRO | Detectar líneas movidas o copiadas dentro de un archivo. |
-DO | Además de -M, detecte líneas movidas o copiadas de otros archivos que se modificaron en la misma confirmación |
-h | Mostrar el mensaje de ayuda |
-do | Utilice el mismo modo de salida que git-annotate (Predeterminado: desactivado) |
-norte | Mostrar el número de línea en la confirmación original (Predeterminado: desactivado) |
Observaciones
El comando git blame es muy útil cuando se trata de saber quién ha realizado cambios en un archivo en una base por línea.
Mostrar el commit que modificó una línea por última vez.
git blame <file>
mostrará el archivo con cada línea anotada con la confirmación que la modificó por última vez.
Ignorar los cambios de solo espacios en blanco
A veces, los repos tienen confirmaciones que solo ajustan los espacios en blanco, por ejemplo, corregir la sangría o cambiar entre tabulaciones y espacios. Esto hace que sea difícil encontrar la confirmación donde se escribió realmente el código.
git blame -w
ignorará los cambios de solo espacios en blanco para encontrar de dónde proviene realmente la línea.
Solo mostrar ciertas lineas
La salida se puede restringir especificando rangos de línea como
git blame -L <start>,<end>
Donde <start>
y <end>
pueden ser:
número de línea
git blame -L 10,30
/ regex /
git blame -L /void main/
,git blame -L 46,/void foo/
+ desplazamiento, -offset (solo para
<end>
)git blame -L 108,+30
,git blame -L 215,-15
Se pueden especificar múltiples rangos de líneas, y se permiten rangos superpuestos.
git blame -L 10,30 -L 12,80 -L 120,+10 -L ^/void main/,+40
Para saber quién cambió un archivo.
// Shows the author and commit per line of specified file
git blame test.c
// Shows the author email and commit per line of specified
git blame -e test.c file
// Limits the selection of lines by specified range
git blame -L 1,10 test.c