Rebaser la branche Git

John Wachira 23 aout 2022
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

  1. Récupérer les modifications

    Nous utilisons la commande git fetch pour 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
    
  1. Apportez des modifications

    Nous lançons la commande git rebase pour 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 commande git commit après le git add . commande.

    Après avoir résolu les conflits, utilisez git rebase --continue pour terminer le processus. Si vous souhaitez interrompre le processus après avoir résolu les conflits, utilisez la commande git rebase --abort.

  2. 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 -f comme illustré ci-dessous.

    git push main HEAD -f
    

    Le -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 HEAD
    

    Cette 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.

Auteur: John Wachira
John Wachira avatar John Wachira avatar

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

Article connexe - Git Rebase