Comment renommer une branche git locale?

Je ne souhaite pas renommer une branche distante, comme décrit dans la section Renommer la branche principale pour les référentiels Git locaux et distants.

Comment renommer une branche locale sur laquelle vous n'avez pas cliqué sur une branche distante?

5839
06 июля '11 в 6:20 2011-07-06 06:20 Forrest est programmé le 6 juillet à 6h20 2011-07-06 06:20
@ 24 réponses

Si vous souhaitez renommer une branche en la pointant sur une branche, procédez comme suit:

 git branch -m <oldname> <newname> 

Si vous voulez renommer la branche actuelle, vous pouvez faire:

 git branch -m <newname> 

La façon de s'en souvenir est, -m pour "déplacer" (ou mv ), c'est-à-dire comment renommer des fichiers.

9202
06 июля '11 в 6:21 2011-07-06 06:21 la réponse est donnée par siride le 06 juillet '11 à 6:21 2011-07-06 06:21
 git branch -m old_branch_name new_branch_name 

La commande ci-dessus changera le nom de votre branche, mais vous devez faire très attention à la branche renommée, car elle fera toujours référence à la branche en amont qui lui est associée, le cas échéant.

Si vous souhaitez déplacer certaines modifications dans l'assistant après que la branche locale a été renommée en nouveau_nom_branch (nom d'exemple):

border=0

git push origin new_branch_name:master (à présent, les modifications iront à la branche principale, mais le nom de votre branche locale est new_branch_name)

Pour plus de détails, consultez " Comment renommer le nom d'une branche locale dans Git .

303
21 янв. la réponse est donnée à Madhan Ayyasamy le 21 janvier 2013-01-21 12:49 '13 à 12:49 2013-01-21 12:49

Pour renommer la branche actuelle:

 git branch -m <newname> 
208
20 июня '13 в 18:05 2013-06-20 18:05 La réponse est donnée par Jonathan le 20 juin 2013 à 18:05. 2013-06-20 18:05

Voici les étapes à suivre pour renommer une branche:

 1. switch to branch which needs to be renamed 2. git branch -m <new_name> 3. git push origin :<old_name> 4. git push origin <new_name>:refs/heads/<new_name> 

EDIT (01/12/2017): Assurez-vous d'exécuter la commande git status et assurez-vous que la branche nouvellement créée pointe vers sa propre référence et non vers l'ancienne. Si vous trouvez un lien vers une ancienne branche, vous devez annuler l'amont en utilisant:

 git branch --unset-upstream 
148
15 апр. Réponse donnée par Milind Anantwar le 15 avril 2015-04-15 15:50 '15 à 15h50 2015-04-15 15:50

Renommer une branche sera utile après avoir terminé votre branche. Vient ensuite le nouveau matériel que vous souhaitez développer dans la même branche, sans le supprimer ni en créer un nouveau.

D'après mon expérience, pour renommer une branche locale et distante dans Git, vous devez suivre les étapes suivantes.

Citation de plusieurs états. Renommer la branche locale et distante en git

1. Renommer la branche locale

Si vous êtes dans une succursale, vous voulez renommer:

 git branch -m new-name 

Si vous êtes sur une autre branche:

 git branch -m old-name new-name 

2. Supprimez la branche distante de l'ancien nom et cliquez sur la branche locale du nouveau nom.

 git push origin :old-name new-name 

3. Réinitialisez la branche en amont pour la branche locale du nouveau nom.

 git push origin -u new-name 
84
14 окт. la réponse est donnée trungk18 14 oct. 2016-10-14 06:22 '16 à 6:22 am 2016-10-14 06:22

Les réponses sont jusqu’à présent correctes, mais voici quelques informations supplémentaires: Vous pouvez renommer une branche avec "-m" (déplacer), mais vous devez faire attention, car "-M" vous oblige à le renommer, même s’il existe une branche du même nom. Voici un extrait de la page de manuel git -branch:

Avec l'option -m ou -M, <oldbranch> sera renommé <newbranch> . Si <oldbranch> a un reflog correspondant, il est renommé pour correspondre à <newbranch> et une entrée de reflog est créée pour rappeler le changement de nom des branches. Si <newbranch> existe, -M doit être utilisé pour forcer un changement de nom.

70
24 сент. La réponse est donnée Vanchev 24 sep . 2013-09-24 16:21 13 à 16h21 2013-09-24 16:21

1. renommer

Si c'est votre sujet actuel, juste

  git branch -m new_name 

S'il s'agit d'une autre branche que vous souhaitez renommer

  git branch -m old_name new_name 

2. Suivre une nouvelle branche distante

. Si vous avez cliqué sur votre branche, vous devez la supprimer du référentiel Git distant après l'avoir renommée et demander à la nouvelle piste locale de la nouvelle branche distante:

  git push origin :old_name git push --set-upstream origin new_name 
56
17 дек. Réponse donnée par Mohamed Osama le 17 décembre 2015-12-17 16:45 '15 à 16h45 2015-12-17 16:45

J'ai bêtement appelé une branche commençant par un trait d'union, puis vérifié le maître. Je ne voulais pas enlever ma branche, j'y travaillais.

Aucun d'entre eux n'a fonctionné:

git checkout -dumb-name

git checkout -- -dumb-name

" s, ' et \ n'ont également pas aidé. git branch -m ne fonctionne pas.

C'est comme ça que j'ai finalement résolu le problème. Allez à votre copie de travail de .git / refs / heads, trouvez le nom de fichier "-dumb-name", obtenez le hachage de la branche. Ensuite, il sera vérifié, créez une nouvelle branche avec un nom raisonnable et supprimez l’ancienne.

 git checkout {hash} git checkout -b brilliant-name git branch -d -- -dumb-name 
51
09 нояб. la réponse est donnée par Samuel Meacham le 09 novembre 2013-11-09 10:31 13 à 10h31 2013-11-09 10:31

Pour renommer une branche localement:

 git branch -m [old-branch] [new-branch] 

Maintenant, vous devrez également propager ces modifications sur un serveur distant.

Pour soumettre les modifications à une ancienne branche supprimée:

 git push origin :[old-branch] 

Pour apporter des modifications à la création d'une nouvelle branche:

 git push origin [new-branch] 
48
20 авг. réponse donnée aliasav 20 août 2015-08-20 09:39 '15 à 9:39 2015-08-20 09:39

Renommez la branche en utilisant cette commande:

 git branch -m [old_branch_name] [new_branch_name] 

-m : il renomme / déplace une branche. S'il y a une branche, vous recevrez un message d'erreur.

S'il existe déjà une branche et que vous souhaitez la renommer avec cette branche, utilisez:

  git rename -M [old_branch_name] [new_branch_name] 

Pour plus d'informations sur l'aide, utilisez cette commande dans le terminal:

 git branch --help 

ou

 man git branch 
23
11 апр. la réponse est donnée par Hafiz Shehbaz Ali le 11 avril. 2015-04-11 09:19 '15 à 9:19 2015-04-11 09:19

Les utilisateurs de Git étendus peuvent renommer manuellement:

 Rename the old branch under .git/refs/heads to the new name Rename the old branch under .git/logs/refs/heads to the new name Update the .git/HEAD to point to yout new branch name 
22
05 авг. La réponse est donnée par Jethik 05 août. 2015-08-05 12:04 '15 à 12:04 2015-08-05 12:04

Comme d'autres l'ont mentionné, il s'agira probablement d'un décalage dans le nom des branches.

Si vous avez cette situation, je devine que vous êtes sur Windows, ce qui vous mènera également à:

 $ git branch -m CaseSensitive casesensitive fatal: A branch named 'casesensitive' already exists. 

Ensuite, vous devez prendre une étape intermédiaire:

 $ git branch -m temporary $ git branch -m casesensitive 

Rien de plus.

16
25 мая '15 в 14:52 2015-05-25 14:52 la réponse est donnée par P4C le 25 mai 2015 à 14:52. 2015-05-25 14:52

Essayez de répondre spécifiquement à la question (au moins le titre).

Vous pouvez également renommer la branche locale, mais gardez une trace de l'ancien nom sur la télécommande.

 git branch -m old_branch new_branch git push --set-upstream origin new_branch:old_branch 

Désormais, lorsque vous exécutez git push , la old_branch distante old_branch est mise à jour vers la new_branch locale.

Vous devez connaître et retenir cette configuration. Mais cela peut être utile si vous n'avez pas le choix du nom de la branche distante, mais vous ne l'aimez pas (oh, je veux dire, vous avez une très bonne raison de ne pas l'aimer!) Et ils préfèrent un nom plus clair pour votre représentant local. branches.

En jouant avec l'exemple de configuration, vous pouvez même renommer le lien distant local. c'est-à-dire avoir un refs/remote/origin/new_branch ref refs/remote/origin/new_branch pour la branche, c'est-à-dire, old_branch à l' origin . Cependant, cela me décourage beaucoup, pour la sécurité de votre esprit.

14
19 мая '16 в 13:39 2016-05-19 13:39 la réponse est donnée à Pierre-Olivier Vares le 19 mai 2016 à 13:39 2016-05-19 13:39

Une autre option consiste à ne pas utiliser la ligne de commande du tout. Les clients Git GUI, tels que SourceTree , suppriment la majeure partie de la courbe de syntaxe apprentissage / difficulté, ce qui soulève des problèmes tels que celui-ci le plus vu dans un débordement de pile.

Dans SourceTree, cliquez avec le bouton droit sur une branche locale dans le panneau "Branches" à gauche et sélectionnez "Renommer ...".

12
08 марта '15 в 19:13 2015-03-08 19:13 La réponse est donnée par Steve Chambers le 8 mars '15 à 19:13 2015-03-08 19:13

Voici trois étapes: une commande que vous pouvez appeler dans votre terminal et modifier le nom de la branche.

 git branch -m old_branch new_branch # Rename branch locally git push origin :old_branch # Delete the old branch git push --set-upstream origin new_branch # Push the new branch, set local branch to track the new remote 

Si vous avez besoin de plus: étape par étape, Comment changer le nom Git d’une branche est un bon article à ce sujet.

12
10 мая '16 в 21:04 2016-05-10 21:04 la réponse est donnée Hazarapet Tunanyan 10 mai 2016 à 21:04 2016-05-10 21:04

Pour renommer la branche actuelle (à l'exception d'un état HEAD distinct), vous pouvez également utiliser cet alias:

 [alias] mvh = !sh -c 'git branch -m `git rev-parse --abbrev-ref HEAD` $1' 
11
02 сент. réponse donnée dentuzhik 02 sept. 2014-09-02 20:25 14 à 20:25 2014-09-02 20:25

Puisque vous ne voulez pas pousser une branche sur un serveur distant, cet exemple sera utile:

Supposons que vous avez une branche existante appelée "my-hot-feature" et que vous souhaitez la renommer "feature-15".

Tout d'abord, vous voulez changer de branche locale. Cela ne pourrait pas être plus facile:

 git branch -m my-hot-feature feature-15 

Pour plus d'informations, vous pouvez visiter le site Local et renommer à distance la branche en Git .

7
27 окт. Répondre Tanah 27 oct. 2015-10-27 13:17 '15 à 13:17 2015-10-27 13:17

Si vous souhaitez utiliser SourceTree (ce que je recommande vivement), vous pouvez cliquer avec le bouton droit de la souris sur votre branche et sélectionner "Renommer".

2019

git version 2.9.2

Si vous souhaitez modifier le nom de la succursale locale sur laquelle vous vous trouvez:

 git branch -m new_name 

Si vous voulez changer le nom d'une autre branche:

 git branch -m old_name new_name 

Si vous souhaitez remplacer le nom d'une autre branche par un nom existant:

 git branch -M old_name new_name_that_already_exists 

Note La dernière commande est destructive et renomme votre branche, mais vous perdrez l’ancienne branche portant ce nom et ils la répareront, car les noms des branches doivent être uniques.

5
22 сент. Réponse donnée par nikkypx le 22 sept. 2016-09-22 03:03 '16 à 3:03 2016-09-22 03:03

Si vous souhaitez modifier le nom de la branche actuelle, exécutez:

 git branch -m [old_branch] [new_branch] 

Si vous souhaitez supprimer l'ancienne branche distante, exécutez:

 git push origin :[old_branch] 

Si vous souhaitez supprimer l'ancienne branche distante et créer une nouvelle branche distante, exécutez:

 git push origin :old_branch new_branch 
4
31 янв. la réponse est donnée à Arif le 31 janvier 2017-01-31 18:53 '17 à 18:53 2017-01-31 18:53

Changer une branche localement est assez simple! ...

Si vous vous trouvez dans une succursale et que vous souhaitez modifier le nom, procédez comme suit:

 git branch -m my_new_branch 

Sinon, si vous êtes sur le master ou sur une autre branche , à l'exception de celle que vous souhaitez modifier, exécutez simplement:

 git branch -m my_old_branch my_new_branch 

De plus, je crée une image ci-dessous pour la montrer en action sur la ligne de commande. Dans ce cas, vous êtes dans la branche principale, par exemple:

2019

Si vous souhaitez renommer le référentiel git -
git branch -m <oldname> <newname>
enlever l'ancienne branche par-
git push origin :old-name new-name
Le réparer avec

git commit <newname>
puis cliquez sur utilisant git push origin new_branch_name:master
Si vous voulez vérifier le statut, utilisez: -
git status
Si vous voulez vérifier, alors: -
git checkout

0
26 авг. la réponse est donnée par Vineet Jain 26 août. 2017-08-26 17:18 '17 à 17:18 2017-08-26 17:18

Tout ce qui précède parle de la git branch -m . Bien sûr, il est facile de travailler avec, mais il peut être un peu difficile pour moi de me souvenir d’une autre commande git. J'ai donc essayé de faire le travail avec l'équipe que je connaissais bien. Oui, vous pouvez deviner.

J'utilise git branch -b <new_branch_name> . Et si vous ne souhaitez pas conserver l’ancienne branche, vous pouvez git branch -D <old_branch_name> pour la supprimer.

Je sais que cela peut être un peu fatiguant, mais c'est plus facile à comprendre et à retenir. J'espère que cela vous sera utile.

0
29 авг. Réponse donnée par Dai Kaixian le 29 août. 2017-08-29 05:16 '17 à 5:16 am 2017-08-29 05:16

Git renommer une branche peut être fait en utilisant

  • git branch -m oldBranch newBranch

  • git branch -M oldBranch ExistingBranch

La différence entre -m et -M ,

-m: si vous essayez de renommer votre branche avec la sortie du nom de la branche à l'aide de -m, cela provoquera une erreur, indiquant que la branche existe déjà. Vous devez spécifier un nom unique.

mais

-M :, cela vous aidera à renommer de force avec le nom donné, même s'il existe. par conséquent, la branche existante l'écrase complètement ...

Voici un exemple de terminal git,

 mohideen@dev:~/project/myapp/sunithamakeup$ git branch master master0 new_master test * test1 mohideen@dev:~/project/myapp/sunithamakeup$ git branch -m test1 test fatal: A branch named 'test' already exists. mohideen@dev:~/project/myapp/sunithamakeup$ git branch -M test1 test mohideen@dev:~/project/myapp/sunithamakeup$ git branch master master0 new_master * test mohideen@dev:~/project/myapp/sunithamakeup$ 
0
01 сент. Réponse donnée par Mohideen ibn Mohammed le 01 Sep 2017-09-01 09:59 '17 à 09:59 2017-09-01 09:59

Autres questions sur tags ou Poser une question