Si vous développez un logiciel ou une application web, l’utilisation de Git est un élément quasi essentiel de votre flux de travail.

Le système de contrôle de version distribué est pratiquement le seul moyen de coordonner vos efforts de codage au sein de votre équipe. À cette fin, Git dispose d’un ensemble de commandes simples que vous pouvez assimiler rapidement, mais qui ne sont pas toujours intuitives.

C’est particulièrement vrai dans des situations telles que l’exécution d’un git rename sur une branche.

Le travail d’équipe nécessite de la communication, et les noms de vos branches – étant donné qu’elles sont publiques – devraient offrir beaucoup de description et de clarté. Cela peut aller à l’encontre du besoin commun de travailler rapidement. Ainsi, la convention de dénomination rapide que vous donnez à une branche afin de commencer à travailler sur le code peut avoir besoin d’être modifiée pour mieux s’adapter à votre projet.

Dans cet article, nous allons vous montrer comment effectuer un git rename sur une branche. Mais d’abord, parlons de ce qu’est une branche dans Git et des situations dans lesquelles vous voudrez en renommer une.

Qu’est-ce qu’une branche Git (et pourquoi en renommer une) ?

Le contrôle de version de Git fonctionne avec des branches. Vous aurez un dépôt principal, qui contiendra toutes les branches du projet, y compris la branche principale (nous y reviendrons plus tard).

L’un des avantages de l’utilisation de Git est que vous pouvez dupliquer la branche principale, travailler sur le code, puis fusionner ces modifications plus tard, une fois que vous avez tout finalisé.

Même Kinsta a la possibilité d’utiliser Git pour accéder à votre site à l’aide de Secure Shell (SSH). De plus, vous pouvez vous connecter à votre dépôt GitHub et déployer votre application en quelques clics à partir du tableau de bord MyKinsta.

Autoriser Kinsta sur GitHub.
Autoriser Kinsta sur GitHub.

Cependant, nommer la branche est une étape que beaucoup de développeurs franchissent à la hâte. Il y a une multitude de raisons pour lesquelles vous pouvez vouloir changer le nom d’une branche dans Git :

  • Clarté : Vous voudrez vous assurer que la branche offre une clarté totale sur les changements de code qu’elle englobe et ce qu’ils font. Cela sera important lors des fusions ou même de la suppression de branches. Vous ne pourrez pas revenir sur la suppression de la mauvaise branche ou sur l’oubli de son nom.
  • Cohérence : Il se peut que votre branche ne suive pas les conventions de dénomination mises en place par votre équipe. Cela signifie que vous devrez réviser les noms des branches ultérieurement.
  • Normes modernes : Si le projet est ancien ou s’il s’agit d’une préoccupation à long terme au sein de votre équipe, il se peut que les branches ne correspondent pas aux conventions actuelles en matière de sensibilité culturelle. Par exemple, il existe un mouvement populaire pour changer la branche principale de « master » à « main » ou « trunk » pour éviter les références à l’institution de l’esclavage.

Pour ces raisons (et d’autres), vous devrez souvent effectuer un git rename sur une branche.

Nous allons maintenant vous expliquer comment procéder.

Comment renommer une branche Git

Lorsqu’il s’agit de lancer un git rename sur une branche, vous devez prendre en compte à la fois les dépôts locaux et les dépôts distants (par exemple GitHub). La bonne nouvelle est que le processus que nous allons décrire couvrira toutes les permutations dont vous aurez besoin pour réussir.

Tout d’abord, voyons comment localiser et changer le nom d’une branche. Pour cela, nous examinerons les drapeaux de commande qui vous aideront. Ensuite, nous verrons comment s’assurer que votre dépôt distant correspond au dépôt local.

1. Utiliser les commandes git checkout et git branch

Votre première tâche est de localiser la branche que vous souhaitez renommer. Vous pouvez utiliser la commande suivante :

git checkout current-name

Lorsque nous utilisons current-name, vous devez ajouter le nom de votre branche. Si vous ne connaissez pas le nom, ou si vous voulez voir la liste complète des branches (peut-être pour vérifier les conventions à travers le projet), vous pouvez utiliser git branch --list ou git branch -a.

Naviguer vers les branches d'un dépôt Git et en dresser la liste.
Naviguer vers les branches d’un dépôt Git et en dresser la liste.

Une fois que vous êtes dans la bonne branche, vous pouvez la renommer en utilisant ce qui suit :

git branch -m new-name

Encore une fois, vous devez vous assurer d’utiliser un nom de branche spécifique ici, plutôt que notre marqueur. Le drapeau -m signifie « déplacer » et est l’élément de la commande qui provoque le renommage.

Renommer une branche dans un dépôt Git.
Renommer une branche dans un dépôt Git.

Si le nouveau nom de branche que vous avez choisi existe déjà, vous pouvez forcer le changement que vous avez spécifié en utilisant -M à la place. C’est également la tactique que vous utiliserez sur les machines Windows si le nom de votre branche contient un mélange de lettres majuscules et minuscules.

Une fois la modification confirmée, utilisez git status pour vérifier si le nouveau nom s’applique à votre branche :

Vérifier qu'un renommage Git a bien eu lieu en utilisant git status.
Vérifier qu’un renommage Git a bien eu lieu en utilisant git status.

Cependant, vous n’avez pas besoin d’utiliser git checkout si vous ne le souhaitez pas. Voyons cela plus en détail.

1(a). Renommer une branche Git sans utiliser git checkout

Cette méthode ne fonctionne que si vous êtes dans la branche principale de votre dépôt. Si ce n’est pas le cas, vous devrez toujours utiliser un git checkout; pour accéder à votre branche principale.

Quoi qu’il en soit, vous pouvez voir votre position actuelle dans le dépôt en utilisant git status. La commande pour changer le nom de la branche est similaire à la dernière méthode, mais cette fois vous combinerez les noms de la branche actuelle et de la nouvelle branche :

git branch -m current-name new-name

Après avoir exécuté la commande, vous pouvez vérifier la liste des branches comme confirmation.

2. Pousser la branche renommée vers le dépôt distant

Bien que cette méthode fonctionne pour un dépôt local, il y a plus à faire lorsqu’il s’agit de dépôts distants. Vous aurez plus souvent qu’autrement à gérer des dépôts distants dans votre projet, et cette étape est l’une de celles que vous ne devez pas oublier.

Si vous sautez cette partie du processus, la nouvelle branche fera toujours référence à son ancien nom de branche en amont. L’astuce consiste à supprimer l’ancienne branche du dépôt distant, puis à pousser la nouvelle branche en amont.

La première étape consiste à renommer la branche locale, mais à partir de là, vous pouvez exécuter plusieurs commandes à tour de rôle.

Tout d’abord, supprimez l’ancienne branche :

git push origin --delete old-branch

…puis pousser la nouvelle branche :

git push origin -u new-branch

Vous pouvez également écraser le nom de la branche en amont en procédant comme suit :

git push origin: old-branch new-branch
git push origin -u new-branch

Exécutez à nouveau git status pour voir si la nouvelle branche pointe vers sa propre référence, plutôt que vers l’ancienne. Si la référence pointe vers l’ancienne branche, vous pouvez utiliser git branch --unset-upstream pour la corriger.

En résumé

Git est une méthode intuitive et puissante pour appliquer le contrôle de version distribué au code de votre projet.

L’un de ses avantages les plus flexibles est la possibilité de l’utiliser à la fois pour les dépôts locaux et les dépôts distants. Cependant, certaines tâches simples (comme renommer des branches) demandent plus de réflexion que d’autres.

Dans cet article, nous avons expliqué comment git rename une branche pour les dépôts locaux et distants. Bien que la commande elle-même soit simple, vous devrez appliquer quelques commandes différentes pour vous assurer que les dépôts locaux et distants correspondent. Sinon, toute fusion que vous effectuerez pourra comporter des erreurs ou des références incorrectes à des dépôts anciens ou inexistants.

Si vous avez besoin d’une option d’hébergement sécurisée et conviviale pour votre application ou base de données basée sur Git, ne cherchez pas plus loin : Les solutions d’hébergement d’applications et de bases de données de Kinsta ont été conçues pour tous les types et toutes les tailles de projets, y compris les applications complètes, et peuvent être déployées via GitHub en quelques minutes seulement.

Votre projet atteindra des niveaux de vitesse inégalés grâce aux machines C2 sur le réseau Premium Tier de Google, et notre intégration Cloudflare vous protégera contre pratiquement tous les problèmes de sécurité imaginables. De plus, vous pouvez avoir autant de builds et d’utilisateurs simultanés que vous le souhaitez.

Consultez les plans d’hébergement d’applications de Kinsta pour trouver celui qui vous convient et qui convient à votre projet, ou essayez-le gratuitement. Si vous avez des questions, les développeurs expérimentés de Kinsta seront là pour vous aider 24/7.