(version git 1.6.5.7)Comment git-diff génère-t-il des descriptions de morceaux?
Quand je lance git diff
la sortie a une belle indication de portée après les numéros de ligne pour mes scripts Python, par exemple:
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):
...
Notez que les numéros de ligne sont suivis TITF: Test Infrastructure Tags Format
et class Tags(object):
. Le premier patch s'applique à la portée du module et la description TITF: Test Infrastructure Tags Format
est la description du module. Le deuxième correctif s'applique à une méthode de la classe Tags
.
- Comment git génère-t-il ces descriptions?
- Comment puis-je les modifier pour afficher le nom de méthode auquel le correctif s'applique?
Intéressant "* .py diff = python" change le comportement pour être comme je voudrais même sans définir un [diff "python"] personnalisé, mais "* .py + diff" (apparemment mon défaut) se comporte comme indiqué dans ma question . – RobM
"* .py diff = python" dit à git d'utiliser les options définies sous [diff "python"] (ou la valeur par défaut prédéfinie), "* .py + diff" permet simplement un diff textuel. Ce commutateur est généralement utilisé pour désactiver les différences pour les fichiers qui ne sont pas toujours détectés comme binaires, par ex. "* .ps -diff" traitera les fichiers PostScript comme binaires et n'affiche donc pas de diff. – DataWraith
Bien que pour les fichiers binaires, il peut être conseillé de définir "* .ps binary" qui est un alias pour "-crlf -diff", c'est-à-dire qu'il désactive aussi le traitement CRLF <-> pour le fichier. – araqnid