Commits multiples à l'aide de Cherry-Pick dans Git
-
Différence entre les commandes
Git merge
etGit Cherry-Pick
dans Git -
le commit de correction de bogues
Cherry-picking
dans Git -
Plusieurs commits
Cherry-picking
dans Git -
Utilisez la commande
Rebase
pour sélectionner les modifications souhaitées sur une branche spécifique dans Git
Après avoir terminé notre travail de branchement, nous n’avons généralement pas besoin de fusionner
dans les fichiers existants.
Nous avons souvent besoin d’obtenir quelques commits particuliers de différentes branches plutôt que de tous les traiter dans une branche particulière. C’est la raison pour laquelle la commande git-cherry pick
est utilisée dans Git.
Différence entre les commandes Git merge
et Git Cherry-Pick
dans Git
git merge
est identique à la commande git cherry-pick
. La commande Git cherry-pick
est utilisée pour assimiler les modifications d’une autre branche à la branche souhaitée.
Lors de l’utilisation de la commande merge
, nous sommes généralement autorisés à assimiler tous les changements effectués dans l’autre branche dans celui que nous souhaitons.
Mais d’un autre côté, nous n’avons parfois besoin que de quelques changements dans la branche souhaitée. Et pour cela, la commande Git cherry-pick
est l’option la plus sûre.
le commit de correction de bogues Cherry-picking
dans Git
Le Cherry-picking
peut généralement être expliqué comme la mise à jour d’un correctif de bogue vers l’ancienne version de notre logiciel, ce qui signifie que pour récupérer uniquement certains correctifs de bogues explicites, parmi des centaines de correctifs de bogues dans une branche particulière.
Ensuite, utilisez ce commit particulier corrigé par un bogue à l’avenir pour une raison quelconque. Cette instruction ou commande est principalement utilisée lorsque l’équipe souhaite corriger un bogue important dans la production ou l’application Web ou de bureau en direct.
À l’aide de cette commande, l’équipe prépare la version et la déploie dans l’environnement de production ou en direct.
Plusieurs commits Cherry-picking
dans Git
Pour certains cas, nous souhaitons appliquer le cherry-pick
sur plusieurs commits simultanément dans différentes branches. Ensuite, nous devons d’abord identifier les deux commits et utiliser les commandes suivantes dessus.
Après cela, le cherry-picking
peut être effectué sur les multiples commits en utilisant la notation par points entre les branches A et B, comme indiqué ci-dessous dans la commande suivante :
$ git cherry-pick A..B
Après application de cette commande, commit A
ne sera pas assimilé au cherry-pick
.
Pour assimiler commit A
également, on peut utiliser la syntaxe suivante :
$ git cherry-pick A^..B
Commit A
doit être plus ancien que commit B
. Si ce n’est pas dans un ordre parfait, la commande utilisée échouera et nous devons l’utiliser selon la condition indiquée ci-dessus.Utilisez la commande Rebase
pour sélectionner les modifications souhaitées sur une branche spécifique dans Git
Nous avons un autre moyen de sélectionner les modifications ou les commits souhaités dans une branche spécifique en utilisant la commande rebase
dans Git. On peut rebase
la commande avec l’option onto
dans cette méthode.
On peut utiliser git rebase --onto
dans deux types de cas :
- La première condition est que nous ayons une branche qui souhaite remplacer sa branche mère dans un référentiel.
- Deuxièmement, nous voulons supprimer immédiatement certains commits de notre branche actuelle dans un référentiel.
Supposons que notre branche
est la branche qui se termine en D
, et c’est la branche souhaitée vers laquelle nous voulons déplacer C
-Y
.
git reset --hard Y
git rebase --onto A B
Cela nous aide à rebaser à partir du point particulier ou à s’engager sur le commit souhaité. Nous pouvons gérer complètement ce qu’il faut rebaser et où rebaser dans une branche spécifique des commits.
Abdul is a software engineer with an architect background and a passion for full-stack web development with eight years of professional experience in analysis, design, development, implementation, performance tuning, and implementation of business applications.
LinkedIn