(git versione 1.6.5.7)In che modo git-diff genera descrizioni di hunk?
Quando eseguo git diff
l'uscita ha un buon suggerimento ambito dopo i numeri di riga per il mio script Python, ad esempio:
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):
...
Si noti che i numeri di riga sono seguiti da TITF: Test Infrastructure Tags Format
e class Tags(object):
. La prima patch si applica all'ambito del modulo e la descrizione TITF: Test Infrastructure Tags Format
è la descrizione del modulo. La seconda patch si applica a un metodo della classe Tags
.
- In che modo git genera queste descrizioni?
- Come posso modificarli per mostrare il nome del metodo a cui si applica la patch?
È interessante notare che "* .py diff = python" cambia il comportamento per essere come vorrei anche senza definire un [diff "python" personalizzato, ma "* .py + diff" (apparentemente il mio default) si comporta come mostrato nella mia domanda . – RobM
"* .py diff = python" dice a git di usare le opzioni definite in [diff "python"] (o il predefinito predefinito), "* .py + diff" abilita appena un diff testuale. Questo interruttore viene solitamente utilizzato per disabilitare i diff per i file che non sono sempre rilevati come binari, ad es. "* .ps -diff" considera i file PostScript come binari e quindi non mostra una diff. – DataWraith
sebbene per i file binari potrebbe essere consigliabile impostare "* .ps binary" che è un alias per "-crlf -diff", cioè disabilita l'elaborazione LF CRLF <-> per il file. – araqnid