Come rinominare un ramo esistente in un repository Git?
Voglio che il ramo attuale abbia un nuovo nome.
Come rinominare un ramo esistente in un repository Git?
Voglio che il ramo attuale abbia un nuovo nome.
Risposte:
Supponendo che tu sia attualmente nel ramo che vuoi rinominare:
git branch -m newname
Questo è documentato nel manuale per git-branch
, che è possibile visualizzare utilizzando
man git-branch
o
git help branch
In particolare, il comando è
git branch (-m | -M) [<oldbranch>] <newbranch>
dove i parametri sono:
<oldbranch>
The name of an existing branch to rename.
<newbranch>
The new name for an existing branch. The same restrictions as for <branchname> apply.
<oldbranch>
è facoltativo, se si desidera rinominare il ramo corrente.
git branch -m other-branch renamed-other-branch
se non lo sei.
git push origin :branchname
. Ciò ti permetterebbe di spingere il nuovo ed eliminare quello vecchio, essenzialmente rinominandolo sul telecomando.
-m
, si rinomina il vecchio ramo, in modo da non cancellare quello precedente.
Se sei attualmente nel ramo che vuoi rinominare:
git branch -m new_name
O altro:
git branch -m old_name new_name
Puoi verificare con:
git branch -a
Come puoi vedere, solo il nome locale è cambiato ora, per cambiare il nome anche nel telecomando devi fare:
git push origin :old_name
Questo rimuove il ramo, quindi caricalo con il nuovo nome:
git push origin new_name
old_name
nuovo al ramo. Fortunatamente, git ha fornito anche una correzione nella riga di comando: git-branch --unset-upstream
. Dopo questo, tutti gli commit spinti sono andati al new_name
ramo remoto.
git push
perché hai un avvertimento che dice Your branch is based on 'old_name, but the upstream is gone.
A git push -u origin new_name
risolverlo.