Bonjour,
Je souhaite merger quelques commits (pas tous) d'une branche vers une autre. Comment dois-je m'y prendre ?
Bonjour,
Je souhaite merger quelques commits (pas tous) d'une branche vers une autre. Comment dois-je m'y prendre ?
Bonjour,
Je fais cela régulièrement pour reporter les corrections faites dans une branche de maintenance vers la branche principale. La seule façon qui me semble acceptable est de faire des "cherry-picks" avec la commande... "cherry-pick". Cette commande prend en paramètre un (et un seul) commit et l'applique dans la branche courante. Avec l'option "-e", Git te propose de modifier le commentaire du commit avant de le valider, et avec "-n", le patch est appliqué dans l'index seulement, et n'est pas commité.
Je n'ai pas trouvé d'autre façon simple de le faire, même quand les commits à appliquer sont nombreux. Il y aurait bien le rebase interactif, mais attention, si tes deux branches pointent sur des remotes différentes, la branche de destination va se mettre à pointer sur la même que l'originale (ou l'inverse, je ne sais plus). Ca se résoud assez facilement avec un "reset" pour refaire pointer la branche sur le bon remote, mais je trouve toujours ça un peu dangereux.
Quand j'ai une grosse séance de cherry-picking qui m'attend, je fais en général une autre branche à partir de la branche de destination dans laquelle j'applique les commits, puis je fais à la fin un merge avec en commentaire les numéros des commits appliqués pour m'y retrouver la fois suivante.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager