Déplacer le commit vers une autre branche dans Git

Abdul Jabbar 30 janvier 2023
  1. Calculer le nombre de commits à déplacer dans Git
  2. Déplacer des commits vers une nouvelle branche dans Git
  3. Déplacer les commits vers une branche existante dans Git
Déplacer le commit vers une autre branche dans Git

Git est un outil très utile et puissant dans le monde du logiciel moderne. De nombreux types de fichiers et de codes peuvent être stockés via la création de branches et le commit dans Git. La création de branches est un concept différent selon le système de contrôle de version que vous utilisez. De nombreux développeurs supposent qu’il s’agit du système de contrôle de version préféré en raison de son efficacité.

La plupart du temps, nous sommes confrontés à cette situation lorsqu’après avoir terminé un travail et nous être engagés dans une branche spécifique, nous réalisons que nous nous sommes engagés par erreur dans la mauvaise branche et que nous voulons l’engager à nouveau sur une autre branche. Ici, Git vient à notre rescousse, nous permettant de déplacer nos commits vers d’autres branches existantes ou sur la nouvelle branche.

Ce guide nous donnera une compréhension de base de la façon de déplacer nos engagements vers une autre branche, qu’elle soit nouvelle ou existante. De plus, nous verrons comment créer une nouvelle branche avec la commande git branch, déplacer un commit avec la commande git reset et fusionner ces modifications dans la branche principale avec la commande git merge.

Calculer le nombre de commits à déplacer dans Git

Avant de commencer tout le processus, nous devons juger de la situation. Supposons que nous ayons vérifié la branche que nous allons modifier ; nous devons voir l’histoire à cette fin.

Nous utiliserons la commande suivante pour calculer le nombre de commits à déplacer.

git log

Après l’exécution, nous pouvons voir que le HEAD est constitué de deux commits à la tête de origin/HEAD, et ce sont les deux commits souhaités dont nous avons besoin pour passer à une autre branche. Vous trouverez ci-dessous les étapes restantes, dans lesquelles nous expliquerons comment déplacer ces commits vers une nouvelle branche ou une branche existante.

Déplacer des commits vers une nouvelle branche dans Git

Les étapes ci-dessous nous montreront comment déplacer nos derniers commits vers une nouvelle branche.

  • Création d’une nouvelle branche
    git branch feature/new branch
    

    Cette commande va créer une nouvelle branche qui inclura tous les commits de la branche master(current).

  • Reculez la branche actuelle de deux commits
    git reset --keep HEAD~2
    
  • Découvrez la nouvelle branch
    git checkout feature/new branch
    

En les exécutant, nos deux derniers commits ont été supprimés de master (branche actuelle) et ajoutés dans une nouvelle branche appelée feature/new branch.

Déplacer les commits vers une branche existante dans Git

Les étapes ci-dessous nous montreront comment déplacer nos derniers commits vers une branche existante. Cela nous sera utile si nous avons travaillé à partir d’une branche de fonctionnalité, mais que nous avons commencé à faire des commits dans la mauvaise branche par erreur. Supposons que la branche courante, avec les commits que nous voulons supprimer, soit master.

  • Vérification de la branche existante
    git checkout feature/existing branch
    

    La commande git checkout ne se limite pas à travailler uniquement avec le répertoire de travail. Il peut également être utilisé pour déplacer le pointeur de référence HEAD vers un point de référence sur une branche.

  • Fusionner la branche principale
    git merge master
    

    La commande git merge peut également être utilisée pour fusionner des branches dans la branche actuelle, mais uniquement si la branche actuelle a déjà été fusionnée dans les branches en cours de fusion.

  • Découvrez la branche master
    git checkout master
    

    La commande checkout master déroule la dernière version du code et crée une nouvelle branche appelée master.

  • Reculez la branche actuelle de deux commits :
    git reset --keep HEAD~2
    

    L’option --keep réinitialisera les entrées d’index et mettra à jour les fichiers dans l’arbre de travail qui sont différents entre commit et HEAD. Lorsque le fichier est différent entre le commit et HEAD a des modifications locales, la réinitialisation est terminée. Ainsi, les deux derniers commits ont été retirés du master et ajoutés à une branche existante.

Auteur: Abdul Jabbar
Abdul Jabbar avatar Abdul Jabbar avatar

Abdul is a software engineer with an architect background and a passion for full-stack web development with eight years of professional experience in analysis, design, development, implementation, performance tuning, and implementation of business applications.

LinkedIn

Article connexe - Git Commit

Article connexe - Git Branch