Maison  >  Article  >  outils de développement  >  La différence entre git merge et rebase

La différence entre git merge et rebase

(*-*)浩
(*-*)浩original
2019-10-22 13:32:529747parcourir

Connectez-vous à la création et à la fusion de branches Git. Lors de la fusion de branches, il existe deux manières : git merge et git rebase.

La différence entre git merge et rebase

git merge : fusionnez les deux branches dans une nouvelle soumission, et la nouvelle soumission a 2 parents.

git rebase : annulera chaque commit dans la branche et les stockera temporairement, puis mettra à jour la branche actuelle vers la dernière branche d'origine, et enfin appliquera tous les commits à la branche.

git merge

Opérations spécifiques : bob modifié 2 fois dans index1.html et l'a soumis à l'entrepôt distant lilei modifié 2 fois dans index.html ; fois et soumettez-le à l'entrepôt distant ; bob extrait l'entrepôt distant (git fetch origin dev) et le fusionne. La structure des branches est la suivante :

La différence entre git merge et rebase

On voit que les deux branches sont fusionnées, et le commit 93a6d33 a 2 parents (135b375 et 8b61b04).

git rebase

Opérations spécifiques : lilei a modifié 2 fois dans index.html et l'a soumis à l'entrepôt distant bob modifié 2 fois dans index1.html et l'a soumis ; à l'entrepôt distant Soumettez, extrayez l'entrepôt distant (git fetch origin dev), rebasez et fusionnez. Le résultat de la ligne de commande est le suivant :

La différence entre git merge et rebase

Déplacez d'abord le pointeur HEAD vers le haut de la branche d'origine actuelle, puis appliquez tous les commits à la branche actuelle. La structure de branche (linéaire) est la suivante :

La différence entre git merge et rebase

On peut voir que lors du rebase, la branche actuelle validera 191b8cd, 00e08ec et les deux soumissions suivantes basées sur le commun ancêtre de 135b375 , un total de 4 soumissions ont été retirées. Déplacez ensuite HEAD vers le commit 322ca9 et réappliquez les 4 commits à la branche.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn