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

相关:

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


当前回答

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

-m 意指全部从[旧部门]移动到[新部门],并记住您可以使用 -M 用于其他文件系统。

其他回答

吉特・伊特的反派命令 试试这个 对我有用

默认分支已被重新命名 ! { oldBranchName} 现在命名为{ newBranchName} 如果您有本地克隆, 您可以运行以下命令来更新它 。

git branch -m {oldBranchName} {NewBranchName}
git fetch origin
git branch -u origin/{NewBranchName} {NewBranchName}
git remote set-head origin -a

之前所有的答案都在谈论 Git 分支- m。 当然,这很容易操作, 但对我来说, 可能很难记住另一个 Git 命令。 所以我试图让我熟悉的指令完成它的工作。 是的,你可能猜到了。

我使用 git 分支 -b <new_branch_name>。 如果您现在不想保存旧分支, 您可以执行 git 分支 -D <old_branch_name> 来删除它 。

我知道这或许有点无聊, 但更容易理解和记住。我希望这对你有益。

到目前为止,答案是正确的,但以下是一些补充信息:

人们可以安全地将分支名称重新命名为 '-m' (move) , 但必须小心使用 '- M' , 因为它迫使重命名, 即使已经有一个已有的分支名称相同 。 以下是“ gitt- branch” man page的节录 :

在 a - m 或 - M 选项下, < oldbranch > 将重新命名为 < newbranch > 。 如果 < oldbranch > 拥有相应的 reflog, 它将被重新命名为匹配 < newbranch > , 并创建一个 reflog 条目以记住分支重命名。 如果存在 < newbranch > , 则 - M 必须用来强制重命名 。

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$

将当前分支重命名为新分支名称 :

git branch -m <new_name>

这将为您正在工作的当前分支设定新名称 。


要重命名另一个分支 :

git branch -m <old_name> <new_name>

您必须在此提供旧的分支名称和新分支名称 。