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

相关:


当前回答

以下是重新命名分支的步骤 :

  1. 切换到需要重新命名的分支
  2. git branch -m <new_name>
  3. git push origin :<old_name>
  4. git push origin <new_name>:refs/heads/<new_name>

EDIT(12/01/2017):确保您运行命令git status并检查新创建的分支指向的是它自己的参考文献,而不是旧的参考文献。如果找到旧分支的引用文献,您需要解开上游的设置,使用 :

git branch --unset-upstream

其他回答

Git 分支重命名可以使用 :

  1. git branch -m oldBranch newBranch

  2. git branch -M oldBranch ExistingBranch

和(或)- 中 - 中- MM,MM,MM,MM,MM,M:

- 毫米:如果您试图用现有的分支名称重命名您的分支- 中 - 中。它会引出一个错误,表示分支已经存在。您需要给出独有的名称。

但是,

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

这儿有一个吉特终点的例子,

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$

使用此命令重命名分支 :

git branch -m [old_branch_name] [new_branch_name]

-m:它重命名/移动分支。如果已经有一个分支,则会出错。

如果已经有一个分支, 您想要用该分支重命名, 请使用 :

 git rename -M [old_branch_name] [new_branch_name]

有关帮助的更多信息,请在终端中使用此命令 :

git branch --help

man git branch

更新2023年最新情况

在开始之前, 请确定您已经选择了您想要重命名的分支 :

git checkout old-name

如果您想要看到本地所有的分支,请使用以下命令:

git branch --list

当你们清清楚楚时,

  1. 使用 Git 重命名分支命令需要添加- 中 - 中命令的选项 :

    git branch -m new-name
    
  2. 您也可以使用以下两个命令从另一个分支重命名本地分支 :

    git checkout master
    
    git branch -m old-name new-name
    
  3. 最后,该指挥部将列出所有(地方和偏远地区)分支,以核实其是否已重新命名:

    git branch -a
    

虽然无法直接重命名一个远程分支, 但重命名一个分支的过程包括两个简单步骤:

  1. 要开始, 您需要按照前几个步骤重命名本地分支 。 2. 然后再重命名本地分支 。删除删除分支和分支推进新建新。您可以通过下列命令轻而易举地做到这一点:

     git push origin :old-name new-name
    
  2. 重新设置您新的本地分支的上游分支, 您将全部设置 :

    git push origin -u new-name
    

所有你必须做的是三步:

  1. 给旧分支下.git/refs/heads新名称
  2. 给旧分支下.git/logs/refs/heads新名称
  3. 更新.git/HEAD导致您新分支名称

要重命名当前分支( 除独立 HEAD 状态外) 您也可以使用此别名 :

[alias]
    mvh = !sh -c 'git branch -m `git rev-parse --abbrev-ref HEAD` $1'