我如何重命名尚未被推到远程仓库的本地分支 ?

相关:

重命名本地和远程 Git 仓库的主分支 ?


当前回答

在视觉演播室:

Git 管理分支 支部 你的仓库 你的支部 重命名

其他回答

试图具体回答问题(至少是标题)。

您也可以重命名本地分支,但继续跟踪远程的旧名称。

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

现在,当您运行 Git 推时, 远程的老管区ref 用您的本地新管区更新 。

您必须知道并记住这个配置。 但如果您没有选择远程分支名称的选择, 它可能会有用, 但是您不喜欢它( 您有一个很好的理由不喜欢它! ) 并且更喜欢您本地分支更清晰的名称 。

使用抓取配置, 您甚至可以重命名本地远程参考 。 也就是说, 拥有分支的 refs/ remote/ broot/ new_ branch ref 指针, 事实上就是原发的旧分队。 但是, 我非常不鼓励您这样做, 以保障您心灵的安全 。

重命名当前分支 :

git branch -m <newname>

将指定给任何分支的分支重新命名 :

git branch -m <oldname> <newname>

- M是短的 -移动。


推动地方分支并重设上游分支:

git push origin -u <newname>

删除远程分支 :

git push origin --delete <oldname>

要创建 git 重命名别名 :

git config --global alias.rename 'branch -m'

在 Windows 或其他不区分大小写的文件系统上, 如果名称中仅出现大小写变化, 请使用 - M 。 否则, Git 会丢弃一个“ 分支已经存在” 错误 。

git branch -M <newname>

如果您想要更改分支的名称

git branch -m newname

在PhpStorm中:

VCS

Git 分支重命名可以使用 :

git 分支 - m 旧的Branch 新建的Branch Git 分支 - M 旧的Branch 现有Branch

-m和-M之间的差别:

-m:如果您试图用 -m 将分支名称重新命名为您所在的分支名称 -m 。 这将产生错误, 表示分支已经存在。 您需要给出独有的名称 。

但是,

- M: 这将帮助您强制重命名一个指定的名称, 即使它已经存在 。 因此一个现有的分支将完全覆盖它...

以下是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$