(versión 1.6.5.7 GIT)¿Cómo genera git-diff las descripciones de trozos?
Cuando corro git diff
la salida tiene un bonito toque alcance después de que los números de línea para mis scripts de Python, por ejemplo:
diff --git a/file.py b/file.py
index 024f5bb..c3b5c56 100644
--- a/file.py
+++ b/file.py
@@ -14,6 +14,8 @@ TITF: Test Infrastructure Tags Format
...
@@ -1507,13 +1533,16 @@ class Tags(object):
...
Note que los números de línea son seguidos por TITF: Test Infrastructure Tags Format
y class Tags(object):
. El primer parche se aplica al alcance del módulo y la descripción TITF: Test Infrastructure Tags Format
es la descripción del módulo. El segundo parche se aplica a un método de la clase Tags
.
- ¿Cómo genera git estas descripciones?
- ¿Cómo puedo modificarlos para mostrar el nombre del método al que se aplica el parche?
Curiosamente "* .py diff = python" cambia el comportamiento para que sea como yo quisiera incluso sin definir un [diff "python] personalizado, pero" * .py + diff "(aparentemente mi predeterminado) se comporta como se muestra en mi pregunta . – RobM
"* .py diff = python" le dice a git que use las opciones definidas bajo [diff "python"] (o el predeterminado predefinido), "* .py + diff" solo habilita una diferencia textual. Este modificador generalmente se utiliza para deshabilitar diffs para archivos que no siempre se detectan como binarios, p. "* .ps -diff" tratará los archivos PostScript como binarios y, por lo tanto, no muestra una diferencia. – DataWraith
, aunque para archivos binarios, puede ser recomendable establecer "* .ps binary", que es un alias para "-crlf -diff", es decir, deshabilita el procesamiento CRLF <-> LF para el archivo también. – araqnid