J'ai un référentiel Git avec de nombreuses branches, certaines déjà fusionnées et d'autres non. Le nombre de succursales étant assez important, comment puis-je déterminer les succursales qui n'ont pas encore été fusionnées? Je voudrais éviter d'avoir à faire une fusion "octopus" et à fusionner des branches qui ont déjà été fusionnées.
git
git-merge
branching-and-merging
fluca1978
la source
la source
Réponses:
Essaye ça:
Il fait ce qu'il dit sur l'étain (liste les branches qui ont été fusionnées
master
). Vous pouvez également tirer l'inverse avec:Si vous ne spécifiez pas
master
, par exemple ..alors il vous montrera les branches qui ont été fusionnées dans le courant
HEAD
(donc si vous êtes surmaster
, c'est équivalent à la première commande; si vous êtes surfoo
, c'est équivalent àgit branch --merged foo
).Vous pouvez également comparer les branches en amont en spécifiant l'
-r
indicateur et une référence à comparer , qui peuvent être locales ou distantes:la source
foo
dansmaster
, il apparaîtra dans lagit branch --merged master
liste. Mais que se passe-t-il si vous vous engagez à nouveaufoo
? N'apparaît-il plus dans cette liste, ou bien, comme s'il comportait de nouveaux commits, il a été fusionné à un moment donnémaster
?--merged
répertorie uniquement les branches qui sont complètement fusionnées dans la branche donnée.gitk --remotes --not origin/master
vous montrera les commits sur chaque branche qui n'ont pas été fusionnés avec master.Vous pouvez également utiliser le
-r
paramètre pour afficher les branches distantes qui n'ont pas été fusionnées dans le maître:la source
-a
pour voir à la fois éloigné et local en même tempsSi une branche est déjà fusionnée, la fusionner à nouveau ne fera rien. Vous n'avez donc pas à vous soucier de la "fusion" de branches déjà fusionnées.
Pour répondre à votre question, vous pouvez simplement émettre
pour voir les branches fusionnées ou
pour voir les branches non fusionnées. Votre branche actuelle est implicite mais vous pouvez spécifier d'autres branches si vous le souhaitez.
vous montrera les branches qui ne sont pas encore fusionnées en
integration
branche.la source
Le script ci-dessous trouvera toutes les
origin/*
branches qui sont en avance sur la branche actuelleLa version à jour du script
la source
la source