262 votes

Comment fusionner un tag git sur une branche ?

J'essaie de trouver la syntaxe pour fusionner un commit balisé sur une autre branche. Je suppose que c'est simple, mais mes faibles tentatives de recherche ne la trouvent pas.

408voto

twalberg Points 19804

Tu veux dire ça ?

git checkout destination_branch
git merge tag_name

116voto

intern Points 322

Rappelez-vous qu'avant de fusionner, vous devez mettre à jour la balise, c'est très différent des branches ( git pull origin tag_name ne mettra pas à jour vos balises locales). Ainsi, vous avez besoin de la commande suivante :

git fetch --tags origin

Ensuite, vous pouvez effectuer git merge tag_name pour fusionner le tag sur une branche.

8voto

e-ruiz Points 71

Je ne fais que compléter la réponse.

Fusionner la dernière étiquette sur une branche :

git checkout my-branch
git merge $(git describe --tags $(git rev-list --tags --max-count=1))

Inspiré par https://gist.github.com/rponte/fdc0724dd984088606b0

1voto

paiego Points 1781

C'est le seul moyen complet et fiable que j'ai trouvé pour le faire.

Supposons que vous voulez fusionner "tag_1.0" dans "mybranch".

    $git checkout tag_1.0 (will create a headless branch)
    $git branch -D tagbranch (make sure this branch doesn't already exist locally)
    $git checkout -b tagbranch
    $git merge -s ours mybranch
    $git commit -am "updated mybranch with tag_1.0"
    $git checkout mybranch
    $git merge tagbranch

1voto

ForTheWin Points 18

Je suis en retard sur le jeu ici, mais une autre approche pourrait être :

1) créer une branche à partir de la balise ( $ git checkout -b [new branch name] [tag name] )

2) Créez une demande de fusion avec votre nouvelle branche dans la branche de destination.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X