Est-il possible de configurer git diff à l'égard de l'indentation et de la syntaxe? Je ne parle pas ignorant l'indentation et des espaces, mais plutôt d'utiliser les lignes vides, des niveaux d'indentation et éventuellement des parenthèses, pour mieux jumeler les vieilles lignes de lignes nouvelles.
E. g. git diff souvent par le biais de coupes de fonctions et de leur docblock, comme ceci:
class C {
/**
+ * Goes to the bar.
+ */
+ function bar() {
+ return 'bar';
+ }
+
+ /**
* Gets your foo up to date.
*/
function foo() {
Lorsque je préfère
class C {
+
+ /**
+ * Goes to the bar.
+ */
+ function bar() {
+ return 'bar';
+ }
/**
* Gets your foo up to date.
*/
function foo() {
Dans cet exemple, il est encore tout à fait inoffensif, mais il y a des exemples où les fonctions et leur docblock sont vraiment déchiré en raison de la gourmande et naïf diff mise en œuvre.
Note: j'ai déjà configuré *.php diff=php
en ~/.gitattributes
.
EDIT: un Autre exemple: Ici git diff mélange une propriété docblock avec une méthode docblock:
/**
- * @var int
+ * @param string $str
*/