Imaginez que vous examiniez les modifications de code. On a déplacé une fonction d'un fichier à l'autre. Le commit montre deux fichiers, un avec un bloc supprimé et un autre avec un bloc ajouté.Git: détecter les modifications effectuées pendant le déplacement du bloc (diff le bloc supprimé et le bloc ajouté)
Comment puis-je, avec Git, faire un diff des deux blocs pour voir les changements effectués dans ce bloc de code?
Exemple simplifié, diff minimal:
+++ a/modules/foo.js
--- b/modules/foo.js
@@ -314,15 +314,12
-function foo() {
- returns 42;
-}
+++ a/modules/bar.js
--- b/modules/bar.js
@@ -271,82 +271,85
+function foo() {
+ returns 43;
+}
Il y a un léger changement. Je voudrais comparer les deux blocs les uns contre les autres pour voir ceci:
function foo() {
- returns 42;
+ returns 43;
}
Je ne veux pas détecter si elle a déménagé mais je veux voir la différence dans le bloc déplacé (que vous déjà reconnu comme mouvement).
Actuellement, je découpe les blocs de code intéressants dans les anciens et nouveaux fichiers, les stocke dans des fichiers temporaires et les compare manuellement, mais je voudrais le faire avec un outil à la place. Jusqu'à présent, je créerais mon propre programme ou script pour le faire automatiquement, mais je me demande si cela est déjà possible avec Git.