Как переименовать существующую ветку в репозитории Git?
Я хочу, чтобы текущая ветка имела новое имя.
Как переименовать существующую ветку в репозитории Git?
Я хочу, чтобы текущая ветка имела новое имя.
Предполагая, что вы сейчас находитесь в ветке, которую хотите переименовать:
git branch -m newname
Это описано в руководстве для git-branch, которое вы можете просмотреть с помощью
man git-branch
or
git help branch
В частности, команда
git branch (-m | -M) [<oldbranch>] <newbranch>
где параметры:
<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> является необязательным, если вы хотите переименовать текущую ветку.
git branch -m other-branch renamed-other-branch, если нет.
- person mipadi; 05.10.2010
git push origin :branchname. Это позволит вам нажать новый и удалить старый, по сути, переименовав его на пульте дистанционного управления.
- person Jonathan; 07.10.2010
-m он переименовывает старую ветку, поэтому удаляет предыдущую.
- person Richard Fearn; 03.08.2015
-m/-M или без них это должно работать :)
- person Richard Fearn; 03.08.2015
-m он переименует other-branch в renamed-other-branch. Имя other-branch больше не будет существовать.
- person mipadi; 03.08.2015
Если вы сейчас находитесь в ветке, которую хотите переименовать:
git branch -m new_name
Или еще:
git branch -m old_name new_name
Вы можете проверить с помощью:
git branch -a
Как видите, изменилось только локальное имя. Теперь, чтобы изменить имя также и в удаленном, вы должны сделать:
git push origin :old_name
Это удалит ветку, а затем загрузит ее с новым именем:
git push origin new_name
old_name. К счастью, git также предоставил исправление в командной строке: git-branch --unset-upstream. После этого все отправленные коммиты отправлялись в удаленную ветку new_name.
- person Hans Roerdinkholder; 11.04.2016
git push, потому что вы получите предупреждение, в котором говорится: Your branch is based on 'old_name, but the upstream is gone. A git push -u origin new_name решить его.
- person netalex; 08.02.2019