2139
10823
我不想重命名远程分支,如本地和远程Git存储库的重命名主分支中所述。
如何重命名尚未推送到远程分支的本地分支?
如果还需要重命名远程分支:如何重命名Git本地和远程分支名称 
1个
2
下一个
如果要在指向任何分支时重命名分支,请执行以下操作:
git branch -m <旧名称> <新名称>
如果要重命名当前分支,可以执行以下操作:
git branch -m <新名称>
一种记住方式是-m用于“移动”(或mv),这是您重命名文件的方式。添加别名也可能有帮助。为此,请运行以下命令:
git config --global alias.rename'分支-m'
如果您使用的是Windows或其他不区分大小写的文件系统,并且名称中只有大小写更改,则需要使用-M,否则git会抛出分支已经存在的错误:
git branch -M <新名称>
|
git branch -m old_branch_name new_branch_name
上面的命令将更改您的分支名称,但是使用重命名的分支必须非常小心,因为它仍将引用与其关联的旧的上游分支(如果有)。
如果要在将本地分支重命名为new_branch_name(示例名称)后将一些更改推送到master中,请执行以下操作:
git push origin new_branch_name:master(现在更改将转到master分支,但您的本地分支名称为new_branch_name)
有关更多详细信息,请参见“如何在Git中重命名本地分支名称”。
|
重命名当前分支:
git branch -m <新名称>
|
以下是重命名分支的步骤:
切换到需要重命名的分支
git branch -m <新名称>
git push origin:<旧名称>
git push origin <新名称>:refs / heads / <新名称>
编辑(12/01/2017):确保您运行命令git status并检查新创建的分支是否指向其自己的引用而不是较旧的分支。如果找到对较早分支的引用,则需要使用以下方法取消设置上游:
git branch --unset-upstream
|
分支完成后,重命名分支将很有用。然后会有新的东西出现,您想在同一个分支中进行开发,而不是删除它并创建一个新分支。
根据我的经验,要在Git中重命名本地和远程分支,您应该执行以下步骤。
从多个州报价-重命名本地和远程分支
吉特
1.重命名您的本地分支机构
如果您在分支机构上,则要重命名:
git branch -m新名称
如果您在另一个分支上:
git branch -m旧名称新名称
2.删除旧名称的远程分支,然后推送新名称的本地分支
git push origin:旧名称新名称
3.将上游分支重置为新名称的本地分支
git push origin -u新名称
|
到目前为止,答案是正确的,但是这里有一些其他信息:
一个人可以安全地用'-m'重命名分支(移动),但是必须谨慎使用'-M',因为即使已经存在一个同名的分支,它也会强制重命名。以下是“ git-branch”手册页的摘录:
使用-m或-M选项,将重命名为。如果具有相应的reflog,则将其重命名为与匹配,并创建一个reflog条目以记住分支重命名。如果存在,则必须使用-M强制进行重命名。
|
1.重命名
如果这是您当前的分支,只需执行
git branch -m new_name
如果是另一个分支,您要重命名
git branch -m旧名称new_name
2.跟踪新的远程分支
-如果分支已被推送,则重命名后,您需要将其从远程Git存储库中删除,并要求您的新本地跟踪新的远程分支:
git push origin:old_name
git push --set-upstream原始new_name
|
我愚蠢地命名了一个以连字符开头的分支,然后签出master。我不想删除我的分支,我已经在其中工作了。
这些都不起作用:
git checkout -dumb-name
git checkout--dumb-name
“ s,s和\ s也无济于事。git branch -m不起作用。
这就是我最终解决它的方法。进入工作副本的.git / refs / heads,找到文件名“ -dumb-name”,获取分支的哈希值。然后将其签出,并使用新名称创建一个新分支,然后删除旧分支。
git checkout {哈希}
git checkout -b辉煌名称
git branch -d--dumb-name
|
要在本地重命名分支:
git branch -m [旧分支] [新分支]
现在,您还必须在远程服务器上传播这些更改。
推送已删除的旧分支的更改:
git push来源:[旧分支]
推动创建新分支的更改:
git push origin [新分支]
|
只需三个步骤即可在远程以及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
|
使用以下命令重命名分支:
git branch -m [旧分支名称] [新分支名称]
-m:重命名/移动分支。如果已经有一个分支,您将得到一个错误。
如果已经有一个分支,并且要使用该分支重命名,请使用:
git重命名-M [old_branch_name] [new_branch_name]
有关帮助的更多信息,请在终端中使用以下命令:
git branch-帮助
要么
人吉特科
|
高级Git用户可以使用以下方式手动重命名:
将.git / refs / heads下的旧分支重命名为新名称
将.git / logs / refs / heads下的旧分支重命名为新名称
更新.git / HEAD以指向您的新分支名称
|
重命名您的本地分支。
如果您在分支机构上,则要重命名:
git branch -m新名称
如果您在另一个分支上:
git branch -m旧名称新名称
删除旧名称的远程分支,然后推送新名称的本地分支。
git push origin:旧名称新名称
将上游分支重置为新名称的本地分支。
切换到分支,然后:
git push origin -u新名称
或者,为实现此目的的快速方法,可以使用以下3个步骤:
#在本地重命名分支
git branch -m old_branch new_branch
#删除旧的远程分支
git push来源:old_branch
#推送新分支,设置本地分支以跟踪新的远程
git push --set-upstream原始new_branch
参考:https://www.w3docs.com/snippets/git/how-to-rename-git-local-and-remote-branches.html
|
这是三个步骤:您可以在终端内部调用并更改分支名称的命令。
git branch -m old_branch new_branch#在本地重命名分支
git push origin:old_branch#删除旧分支
git push --set-upstream origin new_branch#推送新分支,设置本地分支以跟踪新的远程
如果您需要更多:循序渐进,《如何更改Git分支名称》是一篇不错的文章。
|
可能正如其他人所提到的,这将是分支命名中大小写不匹配的原因。
如果您遇到这种情况,我可以猜测您使用的是Windows,这也将导致您:
$ git branch -m CaseSensitive区分大小写
致命的:名为“区分大小写”的分支已存在。
然后,您必须执行一个中间步骤:
$ git branch -m临时
$ git branch -m区分大小写
而已。
|
尝试专门回答问题(至少标题)。
您也可以重命名本地分支,但会继续跟踪远程站点上的旧名称。
git branch -m old_branch new_branch
git push --set-upstream起源new_branch:old_branch
现在,当您运行git push时,将使用本地new_branch更新远程old_branch引用。
您必须知道并记住此配置。但是,如果您没有选择远程分支名称,但又不喜欢它的话,它会很有用(哦,我的意思是,您有充分的理由不喜欢它!),并且希望使用一个更清晰的名称您当地分支机构的名称。
使用获取配置,您甚至可以重命名本地远程引用。即,具有指向分支的refs / remote / origin / new_branch ref指针,实际上是原点上的old_branch。但是,出于您的安全考虑,我强烈不建议这样做。
|
在本地更改分支非常容易...
如果您要更改其名称,请执行以下操作:
git branch -m my_new_branch
否则,如果您在master或您想要更改名称的分支以外的任何其他分支上,只需执行以下操作:
git branch -m my_old_branch my_new_branch
另外,我还创建了下面的图像,以在命令行中显示该图像。在这种情况下,您在master分支上,例如:
|
如果您愿意使用SourceTree(强烈建议使用),则可以右键单击分支并选择“重命名”。
|
要重命名当前分支(分离的HEAD状态除外),您还可以使用以下别名:
[别名]
mvh =!sh -c'git branch -m`git rev-parse --abbrev-ref HEAD` $ 1'
|
另一种选择是根本不使用命令行。 Git GUI客户端(例如SourceTree)消除了许多语法学习曲线/痛苦,这使诸如此类的问题成为Stack Overflow上最受欢迎的问题之一。
在SourceTree中,右键单击左侧“分支”窗格中的任何本地分支,然后选择“重命名...”。
|
一种简单的方法:
git branch -m old_branch new_branch#在本地重命名分支
git push origin:old_branch#删除旧分支
git push --set-upstream origin new_branch#推送新分支,设置本地分支以跟踪新的远程
有关更多信息,请参见此。
|
由于您不想将分支推送到远程服务器,因此此示例将非常有用:
假设您已有一个名为“ my-hot-feature”的分支,并且想要将其重命名为“ feature-15”。
首先,您要更改本地分支。这再简单不过了:
git branch -m my-hot-feature-15
有关更多信息,您可以访问Git中的本地和远程重命名分支。
|
Git版本2.9.2
如果要更改本地分支的名称,请使用:
git branch -m new_name
如果要更改其他分支的名称:
git branch -m旧名称new_name
如果要将其他分支的名称更改为已经存在的名称,请执行以下操作:
git branch -M旧名称new_name_that_already_exists
注意:最后一个命令具有破坏性,将重命名您的分支,但是您将丢失具有该名称的旧分支这些提交是因为分支名称必须唯一。
|
如果要更改当前分支的名称,请运行:
git branch -m [old_branch] [new_branch]
如果要删除旧的远程分支,请运行:
git push来源:[old_branch]
如果要删除旧的远程分支并创建新的远程分支,请运行:
git push origin:old_branch new_branch
|
实际上,您需要执行三个步骤,因为本地分支在服务器上有一个副本,因此我们在服务器上的两个步骤中有一个用于本地的步骤:
重命名本地:即使已签出,也可以使用以下命令重命名当前分支:
git branch -m <旧分支名称> <新分支名称>
删除服务器一:使用以下命令删除服务器上的旧名称分支:
git push <远程名称[默认来源]>:<旧分支名称>
推送新的分支:现在是时候推送服务器上命名的新分支了:
git push -u <新分支名称>
|
可以使用以下命令完成Git分支的重命名:
git branch -m oldBranch newBranch
git branch -M oldBranch现有分支
-m和-M之间的区别:
-m:如果您尝试使用-m使用现有的分支名称重命名分支。
它将显示一个错误,指出该分支已存在。您需要提供唯一的名称。
但,
-M:这将帮助您强制使用给定名称重命名,即使该名称存在也是如此。因此,现有分支将完全用它覆盖...
这是一个Git终端示例,
mohideen @ dev:〜/ project / myapp / sunithamakeup $ git分支
主
大师0
new_master
测试
* test1
mohideen @ dev:〜/ project / myapp / sunithamakeup $ git branch -m test1测试
致命的:名为“ test”的分支已存在。
mohideen @ dev:〜/ project / myapp / sunithamakeup $ git branch -M test1测试
mohideen @ dev:〜/ project / myapp / sunithamakeup $ git分支
主
大师0
new_master
*测试
mohideen @ dev:〜/ project / myapp / sunithamakeup $
|
对于Git GUI用户,这再简单不过了。
在Git GUI中,从菜单项Branch:Rename创建的“重命名分支”对话框的下拉列表中,选择分支名称,键入新名称,然后单击“重命名”。我突出显示了在哪里可以找到下拉列表。
|
先前的所有答案都在谈论git branch -m。当然,它很容易操作,但是对我来说,记住另一个Git命令可能有点困难。因此,我尝试通过我熟悉的命令来完成工作。是的,您可能会猜到。
我使用git branch -b <新分支名称>。而且,如果您现在不想保存旧分支,可以执行git branch -D 将其删除。
我知道这可能有点乏味,但更容易理解和记住。希望对您有帮助。
|
如果你想:
重命名Git存储库,运行:git branch -m <旧名称> <新名称>
通过以下方式删除旧分支:git push origin:old-name new-name
使用以下命令提交:git commit 
然后使用:git push origin new_branch_name:master
如果要检查状态,请使用:git status
如果您想签出,请使用:git checkout
|
开始之前,请确保已选择要重命名的分支:
git checkout旧名称
如果要查看所有本地分支,请使用以下命令:
git branch --list
一切都好之后,请按照以下步骤操作:
使用Git重命名分支命令将需要您在命令中添加-m选项:
git branch -m新名称
您还可以使用以下两个命令从另一个分支重命名本地分支:
git checkout主
git branch -m旧名称新名称
最后,此命令将列出所有分支(本地和远程),以验证其已重命名:
git分支-a
尽管无法直接重命名远程分支,但重命名分支的过程涉及以下三个简单步骤:
首先,您需要按照前面的步骤重命名本地分支。
2.然后删除旧分支并推送新分支。您可以使用以下命令轻松完成此操作:
git push origin-删除旧名称
git push origin:旧名称新名称
重置上游分支为您的新本地分支,您将被设置为:
git push origin -u新名称
|
1个
2
下一个
高度活跃的问题。赢得10个声誉才能回答这个问题。信誉要求有助于保护该问题免受垃圾邮件和非答复活动的侵害。
不是您要找的答案?浏览其他标记为git version-control git-branch的问题,或询问您自己的问题。