Explication de la branche Git: Comment supprimer, extraire, créer et renommer une branche dans Git

Branche Git

La fonctionnalité de branchement de Git vous permet de créer de nouvelles branches d'un projet pour tester des idées, isoler de nouvelles fonctionnalités ou expérimenter sans impact sur le projet principal.

Table des matières

  • Voir les succursales
  • Commander une succursale
  • Créer une nouvelle branche
  • Renommer une branche
  • Supprimer une branche
  • Comparer les succursales
  • Aide avec Git Branch
  • Plus d'information

Voir les succursales

Pour afficher les branches dans un référentiel Git, exécutez la commande:

git branch

Pour afficher à la fois les branches de suivi à distance et les branches locales, exécutez la commande:

git branch -a

Il y aura un astérisque (*) à côté de la branche sur laquelle vous vous trouvez actuellement.

Il existe un certain nombre d'options différentes que vous pouvez inclure git branchpour afficher différentes informations. Pour plus de détails sur les branches, vous pouvez utiliser l' option -v(ou -vv, ou --verbose). La liste des branches comprendra la valeur SHA-1 et la ligne d'objet de validation pour le HEADde chaque branche à côté de son nom.

Vous pouvez utiliser l' option -a(ou --all) pour afficher les branches locales ainsi que toutes les branches distantes d'un référentiel. Si vous ne voulez voir que les branches distantes, utilisez l' option -r(ou --remotes).

Commander une succursale

Pour extraire une branche existante, exécutez la commande:

git checkout BRANCH-NAME

Généralement, Git ne vous permettra pas d'extraire une autre branche à moins que votre répertoire de travail ne soit propre, car vous perdriez toutes les modifications de répertoire de travail qui ne sont pas validées. Vous avez trois options pour gérer vos modifications:

  1. les mettre à la poubelle (voir le règlement Git pour plus de détails) ou
  2. les valider (voir Git commit pour plus de détails) ou
  3. les cacher (voir Git stash pour plus de détails).

Créer une nouvelle branche

Pour créer une nouvelle branche, exécutez la commande:

git branch NEW-BRANCH-NAME

Notez que cette commande crée uniquement la nouvelle branche. Vous devrez courir git checkout NEW-BRANCH-NAMEpour y accéder.

Il existe un raccourci pour créer et extraire une nouvelle branche à la fois. Vous pouvez passer l' -boption (pour la branche) avec git checkout. Les commandes suivantes font la même chose:

# Two-step method git branch NEW-BRANCH-NAME git checkout NEW-BRANCH-NAME # Shortcut git checkout -b NEW-BRANCH-NAME

Lorsque vous créez une nouvelle branche, elle inclura tous les commits de la branche parente. La branche parente est la branche sur laquelle vous vous trouvez lorsque vous créez la nouvelle branche.

Renommer une branche

Pour renommer une branche, exécutez la commande:

git branch -m OLD-BRANCH-NAME NEW-BRANCH-NAME # Alternative git branch --move OLD-BRANCH-NAME NEW-BRANCH-NAME

Supprimer une branche

Git ne vous permettra pas de supprimer une branche sur laquelle vous êtes actuellement. Vous devez d'abord extraire une autre branche, puis exécuter la commande:

git branch -d BRANCH-TO-DELETE # Alternative: git branch --delete BRANCH-TO-DELETE

La branche vers laquelle vous passez fait une différence. Git générera une erreur si les modifications de la branche que vous essayez de supprimer ne sont pas entièrement fusionnées dans la branche actuelle. Vous pouvez remplacer cela et forcer Git à supprimer la branche avec l' -Doption (notez la lettre majuscule) ou en utilisant l' --forceoption avec -dou --delete:

git branch -D BRANCH-TO-DELETE # Alternatives git branch -d --force BRANCH-TO-DELETE git branch --delete --force BRANCH-TO-DELETE

Comparer les succursales

Vous pouvez comparer les branches avec la git diffcommande:

git diff FIRST-BRANCH..SECOND-BRANCH

Vous verrez une sortie colorée pour les changements entre les branches. Pour toutes les lignes qui ont changé, la SECOND-BRANCHversion sera une ligne verte commençant par un "+", et la FIRST-BRANCHversion sera une ligne rouge commençant par un "-". Si vous ne souhaitez pas que Git affiche deux lignes pour chaque modification, vous pouvez utiliser l' --color-wordsoption. Au lieu de cela, Git affichera une ligne avec le texte supprimé en rouge et le texte ajouté en vert.

Si vous voulez voir une liste de toutes les branches qui sont complètement fusionnées dans votre branche actuelle (en d'autres termes, votre branche actuelle inclut toutes les modifications des autres branches répertoriées), exécutez la commande git branch --merged.

Aide avec Git Branch

Si vous oubliez comment utiliser une option ou si vous souhaitez explorer d'autres fonctionnalités autour de la git branchcommande, vous pouvez exécuter l'une de ces commandes:

git help branch git branch --help man git-branch

Plus d'information:

  • La git mergecommande
  • La git checkoutcommande
  • La git commitcommande
  • La git stashcommande
  • Documentation Git: branche