Existe-t-il un moyen d'obtenir une différence visuelle sur deux branches dans SourceTree?

177

Sourcetree offre-t-il un moyen de visualiser les différences entre les gitbranches?

Je cherche:

  • noms des fichiers qui ont changé
  • diffs entre ces fichiers
Snowcrash
la source

Réponses:

230

Utilisez (OSX) ou CTRL(Windows et Linux) et choisissez les deux validations que vous aimez dans la vue du journal. Peu importe à quelle branche appartiennent les commits.

En conséquence, vous verrez quelque chose comme ...

Affichage de toutes les modifications entre f03a18bf0370c62bb5fb5c6350589ad8def13aea et 4a4b176b852e7c8e83fffe94ea263042c59f0548

... en bas.

Anton Glukhov
la source
C'était la chose intuitive à faire et je l'ai essayé. Pour une raison quelconque, il ne fonctionne pas sur la version: 2.1 sur Mavericks 10.9.5. Bizarre, la commande ci-dessous semble fonctionner.
einarc
Pour toute personne dense comme moi, CMD = Commande ⌘. La réponse suggère essentiellement que si vous sélectionnez plusieurs commits, Sourcetree vous montre automatiquement la différence. Je préfère la réponse de Gan, mais si c'est plus général.
KC Baltz
2
Était sur le point de demander la même chose pour GitKraken, où il s'avère que cela fonctionne de manière similaire .
Jeroen
Impressionnant. Fonctionne même si une branche est locale et l'autre est la télécommande vers laquelle je suis sur le point de forcer
Ingénieur inversé
189

Une autre façon de faire est de faire un clic droit sur une branche et de sélectionner la commande de menu contextuel "Diff contre courant" ( courant fait référence à la branche sur laquelle vous travaillez actuellement). Cela vous donnera la différence entre les commits principaux des deux branches.

Source: https://answers.atlassian.com/questions/167126/sourcetree-diff-against-current-behavior#

Capture d'écran (basée sur Sourcetree v1.9.5):

entrez la description de l'image ici

Après avoir choisi "Diff par rapport au courant" dans le menu contextuel, vous devriez voir un message indiquant:

Affichage de toutes les modifications entre {commit_hash} et la copie de travail

Après avoir choisi "Différer par rapport au courant", vous devriez voir une liste des fichiers qui ont changé, sous le message "Affichage de toutes les modifications entre {commit_hash} et la copie de travail"

Gan
la source
1
Celui-ci a fonctionné pour moi. L'utilisation de Command, qui est intuitive, ne l'a pas fait.
einarc
"Diff contre maître" serait un excellent ajout. Si je sélectionne maître et "diff contre courant", je vois le diff inversé de la branche de fonction actuelle.
BricoleurDev
c'était ce que je cherchais
yBother
18

Vous pouvez également le faire en appuyant sur Ctrl + clic sur les deux commits de branches que vous souhaitez différencier.

Taran
la source
0

Vous pouvez également utiliser un outil Diff externe. Par exemple, j'utilise Beyond Compare. Une fois que vous l'avez défini en tant qu'outil de comparaison externe dans sourcetree, vous sélectionnez les deux fichiers que vous souhaitez comparer à l'aide de CTRL, puis appuyez sur CTRL + D. En conséquence, Beyond Compare sera lancé avec les deux fichiers prêts à être comparés.

lsc05
la source