en tant que développeur, beaucoup d’entre nous doivent choisir entre Merge et Rebase. Avec toutes les références que nous obtenons d’internet, tout le monde croit « N’utilisez pas Rebase, cela pourrait causer de graves problèmes. »Ici, je vais expliquer ce que sont la fusion et le rebase, pourquoi vous devriez (et ne devriez pas) les utiliser, et comment le faire.
git Merge et git Rebase ont le même objectif. Ils sont conçus pour intégrer les changements de plusieurs branches en une seule., Bien que l’objectif final soit le même, ces deux méthodes l’atteignent de différentes manières, et il est utile de connaître la différence lorsque vous devenez un meilleur développeur de logiciels.
cette question a divisé la communauté Git. Certains croient que vous devriez toujours rebaser et d’autres que vous devriez toujours fusionner. Chaque côté a des avantages convaincants.
git Merge
La fusion est une pratique courante pour les développeurs utilisant des systèmes de contrôle de version. Que les branches soient créées pour des tests, des corrections de bugs ou pour d’autres raisons, la fusion valide les modifications vers un autre emplacement., Pour être plus précis, la fusion prend le contenu d’une branche source et les intègre à une branche cible. Dans ce processus, seule la branche cible est modifiée. L’historique de la branche source reste le même.,da2a4595a »>Fusionner les Maître -> branche
les Pros
Simple et familière
Conserve un historique complet et dans l’ordre chronologique
Maintient le contexte de la branche
Cons
Commit l’histoire peut être pollué par beaucoup de fusion s’engage
Débogage à l’aide de git bisect peut devenir plus difficile
Comment faire
Fusionner la branche master dans la branche à l’aide de la balise checkout et merge commandes.,
cela créera un nouveau « commit de fusion” dans la branche de fonctionnalité qui contient l’historique des deux branches.
Git Rebase
Rebase est une autre façon d’intégrer les modifications d’une branche à l’autre. Rebase compresse toutes les modifications en un seul » patch.” Puis il intègre le patch sur la branche cible.
contrairement à la fusion, le rebasage aplatit l’historique car il transfère le travail terminé d’une branche à une autre. Dans le processus, l’historique indésirable est éliminé.,
les Rebases sont la façon dont les modifications doivent passer du haut de la hiérarchie vers le bas, et les fusions sont la façon dont elles remontent vers le haut