Cueillette de cerises avec TortoiseGit

Réponses:

155
  1. Ouvrez le journal dans un référentiel avec la branche cible extraite.
  2. Utilisez le nom de la branche bleue en haut à gauche pour sélectionner la branche source .
  3. Sélectionnez le (s) commit (s) souhaité (s).
  4. Faites un clic droit et sélectionnez Cherry Choisissez ce commit .
vpatil
la source
52
Pour voir le journal d'une autre branche, cliquez sur le nom de la branche bleue en haut à gauche de la fenêtre du journal.
kichik
4
Je sais que c'est une bonne réponse, mais je n'ai pas d'option de sélection cerise sur le clic droit, quelle que soit la branche que je sélectionne
PandaWood
1
@PandaWood peut-être que votre branche de travail actuelle est sur une tête détachée? Si tel est le cas, il vous suffit de nommer la branche actuelle. "git checkout -b <NAME>" ou quelle que soit l'option TortoiseGit ...
Digikata
6
une autre raison courante pour laquelle aucune option de sélection de cerise n'apparaît sur le clic droit, c'est que la branche sur laquelle vous vous trouvez a déjà ce commit
vazor
1
Ouvrez "Afficher le journal", puis j'ai activé "Toutes les branches" et ensuite j'ai vu toutes les branches (avec leur historique de commit) et ensuite la possibilité de choisir une cerise est devenue active (comme indiqué précédemment, j'ai obtenu un commit qui n'était pas présent dans la branche actuelle).
st6mm
15

Considérant que la branche 'release' est nécessaire pour choisir parmi la branche 'master', suivez les étapes ci-dessous:

Étape 1: Vérifiez la branche 'release'

entrez la description de l'image ici

Étape 2: Cliquez sur TostoiseGit -> Afficher le journal

entrez la description de l'image ici

Étape 3: La branche source du filtre s'engage à être sélectionnée

Dans la fenêtre Log Messages, sélectionnez la branche source à partir de laquelle les commits seront Cherry Picked (c'est-à-dire la branche «master» dans cet exemple). La sélection de branche peut être effectuée en haut à gauche de la fenêtre `` Messages du journal '' (comme indiqué ci-dessous)

entrez la description de l'image ici

Étape 4: Sélectionnez les Commits à sélectionner

Enfin, sélectionnez les validations et cliquez avec le bouton droit sur le menu contextuel pour les sélectionner.

entrez la description de l'image ici

Ashraf Alam
la source
2
pour l'étape 1, je change de branche en faisant un clic droit -> TortoiseGit -> Switch / Checkout
McCoy
Après avoir cliqué sur "Cherry Pick selected commits", cliquez sur continuer, fusionnez le conflit, le cas échéant, puis cliquez sur commit. Après avoir fait tout cela, n'oubliez pas de pousser le code dans la branche correspondante (ici release).
S Kumar
2

Les réponses ci-dessus sont également correctes et je ne fais que les simplifier.

Si vous souhaitez sélectionner d'une branche à une autre (par exemple: Branch_18.1 à Branch_18.4)

  • Accédez au dossier Branch_18.4 (repo)
  • Faites un clic droit et sélectionnez afficher le journal, cela ouvrira une fenêtre de dialogue de journal
  • Dans cette fenêtre, dans le coin supérieur gauche, cliquez sur Lien hypertexte de la branche actuelle (c.-à-d. Branch_18.4)
  • Sélectionnez maintenant la branche à partir de laquelle vous souhaitez effectuer une photo cerise (c'est-à-dire Branch_18.1)
  • Maintenant, sélectionnez et cliquez avec le bouton droit sur le commit à sélectionner et sélectionnez Cherry pick selected commits.
  • Maintenant, il peut vous demander de cacher vos modifications si vous avez des modifications dans votre arbre de travail, puis dans ce cas, cliquez sur "OUI".
  • Maintenant, avant de pousser les changements choisis par cerise, tirez puis poussez.
YATENDRA SHARMA
la source
1
Bienvenue dans StackOverflow! Si vous souhaitez simplement améliorer la réponse existante, il est généralement préférable de lui suggérer une modification (en cliquant editsous le contenu des réponses)
Arion