Как переименовать местный филиал Git'а? (2/6)

git version-control git-branch




Answer 6 Vanchev


До сих пор ответы были правильными,но вот некоторая дополнительная информация:

Можно смело переименовывать ветку с помощью '-m' (перемещение),но следует быть осторожным с '-M',так как это заставляет переименовывать ветку,даже если уже есть существующая ветка с таким же именем.Вот выдержка из man-страницы 'git-branch':

С параметром -m или -M <oldbranch> будет переименован в <newbranch> . Если <oldbranch> имел соответствующий reflog, он переименовывается, чтобы соответствовать <newbranch> , и создается запись reflog для запоминания переименования ветви. Если <newbranch> существует, необходимо использовать -M, чтобы произошло переименование.




Answer 7 Oss


1.Переименовать

Если это ваша текущая ветка, просто сделайте

git branch -m new_name

Если это другая ветка, которую вы хотите переименовать

git branch -m old_name new_name

2.Отследить новый удаленный филиал

- Если ваша ветка была перемещена, то после переименования вам нужно удалить ее из удаленного репозитория Git и попросить новую локальную систему отследить новую удаленную ветку:

git push origin :old_name
git push --set-upstream origin new_name



Answer 8 Samuel Meacham


Я по глупости назвал ветку, начинающуюся с дефиса, а затем проверил мастера. Я не хотел удалять свою ветку, у меня была работа в ней.

Ни то,ни другое не сработало:

git checkout -dumb-name

git checkout -- -dumb-name

" S, ' s и \ s не помогло. git branch -m не работает.

Вот как я наконец-то починил его.Зайдите в .git/refs/heads вашей рабочей копии,найдите имя файла "-dumb-name",получите хэш ветки.Затем это проверит его,сделает новое ответвление с вменяемым именем и удалит старое.

git checkout {hash}
git checkout -b brilliant-name
git branch -d -- -dumb-name



Answer 9 aliasav


Чтобы переименовать местный филиал:

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

Теперь вам придется распространить эти изменения и на вашем удаленном сервере.

Чтобы нажать на изменения удаленной старой ветки:

git push origin :[old-branch]

Подтолкнуть изменения в создании новой ветки:

git push origin [new-branch]



Answer 10 Harry_pb


Всего три шага для репликации изменения имени как на remote так и на GitHub:

Шаг 1 git branch -m old_branchname new_branchname

Шаг 2 git push origin :old_branchname new_branchname

Шаг 3 git push --set-upstream origin new_branchname