Maison >outils de développement >git >La différence entre git merge et rebase
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.
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 :
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 :
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 :
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!