2017-06-06 4 views
2

J'ai ceci:Git - Diff entre les branches dans le vieux engage

branch: commit 1, commit 2, 3,4 
master: commit 1, commit 2, 3,4,5,6,7 

Comment pouvez-vous faire une diff entre la branche après commit 2 (en ce moment de l'histoire) et maître commit 3?

+1

[la réponse de phd] (https://stackoverflow.com/a/44400650/1256452) est correcte (et mise à jour), mais notez que l'astuce consiste à réaliser que "branche" dans Git signifie vraiment très peu. Git est tout à propos de * commits; * un nom de branche est juste un moyen d'identifier une validation spécifique, avec la fonctionnalité supplémentaire que chaque fois que vous ajoutez commet à la branche, le mappage nom-à-commit-ID * automatiquement * le nom se traduit par le dernier commit. La branche n'est donc pas vraiment le * nom * mais plutôt l'ensemble des commits trouvés * à partir du * nom. – torek

Répondre

2

Nommez vos commits b1, b2, b3, b4; m1, m2, m3, m4, m5, m6, m7. Pour diff deux commits, vous pouvez exécuter git diff commit1 commit2. Dans votre cas, c'est git diff b2 m3.

0

Vous pouvez toujours et en tout temps vérifier la différence entre engage avec

git diff commit1..commit2 

Vous pouvez remplacer commettre avec des noms de succursales.

git diff master..foo 

ou encore avec la tête

git diff master..HEAD 

et ainsi de suite.

Voici un exemple concret:

git diff e8e1956c174da9d..90f2b3ee988d8b6 

Notez que le hachage complet n'est pas nécessaire.