Comment fusionner une balise git sur une branche


155

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

Réponses:


260

Tu veux dire ça?

git checkout destination_branch
git merge tag_name

11
Idem ici, donc je vais chercher --tags origin alors je pourrais: git merge tagname
Will Hancock

Existe-t-il un moyen de fusionner toutes les balises à la fois?
ComFreek

Est-ce possible dans l'autre sens? Fusionner une branche avec la balise? J'ai essayé "git checkout tag_name" et "git merge branch". Mais a fini par vérifier la branche au lieu de fusionner.
apprenant le

@learner a Tag identifie un commit spécifique. Vous ne pouvez pas fusionner dans un commit spécifique, vous devez donc déplacer la balise vers le commit souhaité. Cela permettrait de résoudre le problème: stackoverflow.com/questions/8044583/…
Josiah

85

N'oubliez pas qu'avant de fusionner, vous devez mettre à jour la balise, elle est assez différente des branches ( git pull origin tag_namene 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_namepour fusionner la balise sur une branche.


4
J'ai dû faire git remote add upstream git@github.com/org/reposuivi de git fetch --tags upstreampour que ça marche.
MarkHu


1

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

Supposons que vous souhaitiez 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

0

Je suis en retard au match 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 pull-request pour fusionner avec votre nouvelle branche dans la branche de destination

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.