Rebaser la branche Git
Ce didacticiel couvre les différentes étapes que vous pouvez suivre pour rebaser votre branche locale vers une branche maître distante à l’aide des commandes git fetch, git rebase et git push.
Rebaser la branche locale sur une branche principale distante dans Git
-
Récupérer les modifications
Nous utilisons la commande
git fetchpour obtenir toutes les modifications de notre référentiel distant.pc@JOHN MINGW64 ~/Git (Branch1) $ git fetch remote: Enumerating objects: 3, done. remote: Counting objects: 100% (3/3), done. remote: Total 3 (delta 0), reused 0 (delta 0), pack-reused 0 Unpacking objects: 100% (3/3), 610 bytes | 3.00 KiB/s, done. From https://github.com/Wachira11ke/Delftscopetech * [new branch] main -> origin/main -
Apportez des modifications
Nous lançons la commande
git rebasepour intégrer les modifications à notre branche. L’exemple ci-dessous va rebaser notre branche actuelle à partir de la branche principale.pc@JOHN MINGW64 ~/Git (main) $ git rebase main Current branch main is up to date.Lorsque des conflits surviennent, utilisez le
git add .commande pour les résoudre. N’exécutez pas la commandegit commitaprès legit add .commande.Après avoir résolu les conflits, utilisez
git rebase --continuepour terminer le processus. Si vous souhaitez interrompre le processus après avoir résolu les conflits, utilisez la commandegit rebase --abort.
-
Pousser les modifications vers le référentiel distant
Pour télécharger le contenu dans votre référentiel local, utilisez la commande
git push -fcomme illustré ci-dessous.git push main HEAD -fLe
-fécrasera toutes les modifications apportées par d’autres développeurs dans le référentiel distant.Vous trouverez ci-dessous une méthode plus sûre pour envoyer des modifications à un référentiel distant.
git push --force-with-lease main HEADCette commande n’écrasera pas les modifications apportées par d’autres développeurs dans le référentiel distant.
Le rebasage et la fusion sont utilisés pour intégrer les changements d’une branche à une autre. Le rebasage est le processus de mise à jour d’une branche de fonctionnalité sans perturber l’historique de la branche, permettant un historique de validation plus propre.
C’est l’opposé de
git merge, qui peut créer des branches conflictuelles lorsqu’elles sont partagées avec d’autres.
John is a Git and PowerShell geek. He uses his expertise in the version control system to help businesses manage their source code. According to him, Shell scripting is the number one choice for automating the management of systems.
LinkedIn