我不想重命名远程分支,如重命名本地和远程Git存储库的master分支中所述。

如何重命名尚未推送到远程分支的本地分支?

如果您还需要重命名远程分支:
如何重命名Git本地和远程分支名称


#1楼

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中重命名本地分支名称 ”。


#2楼

重命名当前分支:

git branch -m <newname>

#3楼

到目前为止,答案是正确的,但是这里有一些其他信息:

可以安全地用'-m'重命名分支(移动),但是使用'-M'时要小心,因为即使已经存在相同名称的分支,它也会强制重命名。 以下是“ git-branch”手册页的摘录:

使用-m或-M选项, <oldbranch>将重命名为<newbranch> 。 如果<oldbranch>具有相应的引用日志,则将其重命名为与<newbranch>匹配,并创建引用日志条目以记住分支重命名。 如果<newbranch>存在,则必须使用-M强制进行重命名。


#4楼

我愚蠢地命名了一个以连字符开头的分支,然后签出master。 我不想删除我的分支,我已经在其中工作了。

这些都不起作用:

git checkout -dumb-name

git checkout -- -dumb-name

" s和' S和\\小号都于事无补。 git branch -m不起作用。

这是我终于解决它的方法。 进入工作副本的.git / refs / heads,找到文件名“ -dumb-name”,获取分支的哈希值。 然后将其签出,创建一个名称正确的新分支,然后删除旧分支。

git checkout {hash}
git checkout -b brilliant-name
git branch -d -- -dumb-name

#5楼

要重命名当前分支(分离的HEAD状态除外),您还可以使用以下别名:

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

#6楼

另一种选择是根本不使用命令行。 Git GUI客户端(例如SourceTree)消除了很多语法学习曲线/痛苦,这使诸如此类的问题成为Stack Overflow上最受欢迎的问题之一。

在SourceTree中,右键单击左侧“分支”窗格中的任何本地分支,然后选择“重命名...”。


#7楼

使用以下命令重命名分支:

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

#8楼

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

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

编辑(2017年12月1日):确保您运行命令git status并检查新创建的分支是否指向其自己的引用而不是较旧的分支。 如果找到对较早分支的引用,则需要使用以下方法取消设置上游:

git branch --unset-upstream

#9楼

可能正如其他人所提到的,这将是分支命名中大小写不匹配的原因。

如果您遇到这种情况,我可以猜测您使用的是Windows,这也将导致您:

$ git branch -m CaseSensitive casesensitive
fatal: A branch named 'casesensitive' already exists.

然后,您必须执行一个中间步骤:

$ git branch -m temporary
$ git branch -m casesensitive

而已。


#10楼

高级Git用户可以使用以下方式手动重命名:

Rename the old branch under .git/refs/heads to the new nameRename the old branch under .git/logs/refs/heads to the new nameUpdate the .git/HEAD to point to yout new branch name

#11楼

要在本地重命名分支:

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

现在,您还必须在远程服务器上传播这些更改。

推送已删除的旧分支的更改:

git push origin :[old-branch]

推动创建新分支的更改:

git push origin [new-branch]

#12楼

由于您不想将分支推送到远程服务器,因此此示例将非常有用:

假设您已有一个名为“ my-hot-feature”的分支,并且想要将其重命名为“ feature-15”。

首先,您要更改本地分支。 这再简单不过了:

git branch -m my-hot-feature feature-15

有关更多信息,您可以访问Git中的本地和远程重命名分支


#13楼

1.重命名

如果这是您当前的分支,只需执行

git branch -m new_name

如果是另一个分支,您要重命名

git branch -m old_name new_name

2.跟踪新的远程分支

-如果分支已被推送,则重命名后,您需要将其从远程Git存储库中删除,并要求您的新本地跟踪新的远程分支:

git push origin :old_name
git push --set-upstream origin new_name

#14楼

这是三个步骤:您可以在终端内部调用并更改分支名称的命令。

git branch -m old_branch new_branch         # Rename branch locally
git push origin :old_branch                 # Delete the old branch
git push --set-upstream origin new_branch   # Push the new branch, set local branch to track the new remote

如果您需要更多:循序渐进,《 如何更改Git分支名称》是一篇不错的文章。


#15楼

尝试专门回答问题(至少标题)。

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

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

现在,当您运行git push ,将使用本地new_branch更新远程old_branch ref。

您必须知道并记住此配置。 但是,如果您没有选择远程分支名称,但又不喜欢它的话,它会很有用(哦,我的意思是,您有充分的理由不喜欢它!),并且希望使用一个更清晰的名称您当地分支机构的名称。

使用获取配置,您甚至可以重命名本地远程引用。 即,具有refs/remote/origin/new_branch REF指针到分支,即实际上是在old_branchorigin 。 但是,出于您的安全考虑,我强烈不建议这样做。


#16楼

Git版本2.9.2

如果要更改本地分支的名称,请使用:

git branch -m new_name

如果要更改其他分支的名称:

git branch -m old_name new_name

如果要将其他分支的名称更改为已经存在的名称:

git branch -M old_name new_name_that_already_exists

注意:最后一个命令具有破坏性,将重命名您的分支,但是您将丢失具有该名称和那些提交的旧分支,因为分支名称必须唯一。


#17楼

分支完成后,重命名分支将很有用。 然后会有新的东西出现,您想在同一个分支中进行开发,而不是删除它并创建一个新分支。

根据我的经验,要在Git中重命名本地和远程分支,您应该执行以下步骤。

从多个州报价-在git中重命名本地和远程分支

1.重命名您的本地分支机构

如果您在分支上,则要重命名:

git branch -m new-name

如果您在另一个分支上:

git branch -m old-name new-name

2.删除旧名称的远程分支,然后推送新名称的本地分支

git push origin :old-name new-name

3.为新名称的本地分支重置上游分支

git push origin -u new-name

#18楼

如果要更改当前分支的名称,请运行:

git branch -m [old_branch] [new_branch]

如果要删除旧的远程分支,请运行:

git push origin :[old_branch]

如果要删除旧的远程分支并创建新的远程分支,请运行:

git push origin :old_branch new_branch

#19楼

如果您愿意使用SourceTree (强烈建议使用),则可以右键单击分支并选择“重命名”。


#20楼

本地更改分支非常容易...

如果您要更改其名称,只需执行以下操作:

git branch -m my_new_branch

否则,如果您在master或您想要更改名称的分支以外的任何其他分支上 ,只需执行以下操作:

git branch -m my_old_branch my_new_branch

另外,我还创建了下面的图像,以在命令行上显示该图像。 在这种情况下,您位于master分支上,例如:


#21楼

如果你想:

  • 重命名Git存储库,运行: git branch -m <oldname> <newname>
  • 通过以下方式删除旧分支: git push origin: old-name new-name
  • 使用以下命令git commit <newname>git commit <newname>
    • 然后使用: git push origin new_branch_name:master
  • 如果要检查状态,请使用: git status
  • 如果要签出,请使用: git checkout

#22楼

先前的所有答案都在谈论git branch -m 。 当然,它很容易操作,但是对我来说,记住另一个Git命令可能有点困难。 因此,我尝试通过我熟悉的命令来完成工作。 是的,您可能会猜到。

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

我知道这可能有点乏味,但更容易理解和记住。 希望对您有帮助。


#23楼

可以使用以下命令完成Git分支的重命名:

  1. git branch -m oldBranch newBranch

  2. git branch -M oldBranch ExistingBranch

-m-M之间的区别:

-m:如果您尝试使用-m使用现有的分支名称重命名分支。 这将引发一个错误,指出该分支已存在。 您需要提供唯一的名称。

但,

-M:这将帮助您强制使用给定名称重命名,即使该名称存在也是如此。 因此,现有分支将完全用它覆盖...

这是一个Git终端示例,

mohideen@dev:~/project/myapp/sunithamakeup$ git branchmastermaster0new_mastertest
* 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 branchmastermaster0new_master
* test
mohideen@dev:~/project/myapp/sunithamakeup$

#24楼

重命名分支:

git branch -m old_branchname new_branchname

-m选项的长名称是--move 。 所以我们也可以使用:

git branch --move old_branchname new_branchname

如果要重命名当前分支,请使用以下命令:

git branch -m new_branchname

要么

git branch -move new_branchname

如果要将这些更改移至远程,请使用以下命令。

git push origin :old_branchname new_branchname

这将删除old_branchname远程分支,并推送new_branchname本地分支。

git push origin -u new_branchname

这将为new_branchname本地分支重置上游分支。


#25楼

一种简单的方法:

git branch -m old_branch new_branch         # Rename branch locally
git push origin :old_branch                 # Delete the old branch
git push --set-upstream origin new_branch   # Push the new branch, set local branch to track the new remote

如需更多信息,请参见本 。


#26楼

  1. 重命名您的本地分支。

如果您在分支上,则要重命名:

git branch -m new-name

如果您在另一个分支上:

git branch -m old-name new-name
  1. 删除旧名称的远程分支,然后推送新名称的本地分支。

git push origin :old-name new-name

  1. 将上游分支重置为新名称的本地分支。 切换到分支,然后:

git push origin -u new-name

或者,为实现此目的的快速方法,可以使用以下3个步骤:

#在本地重命名分支

git branch -m old_branch new_branch

#删除旧的远程分支

git push origin :old_branch

#推送新分支,设置本地分支以跟踪新的远程

git push --set-upstream origin new_branch

参考: https ://www.w3docs.com/snippets/git/how-to-rename-git-local-and-remote-branches.html


#27楼

git branch -m old_branch_name  new_branch_name

要么

git branch --move old_branch_name new_branch_name

#28楼

对于Git GUI用户,这再简单不过了。 在Git GUI中,从菜单项Branch:Rename创建的“重命名分支”对话框的下拉列表中选择分支名称,键入新名称,然后单击“重命名”。 我突出显示了在哪里可以找到下拉列表。


#29楼

仅需两个步骤即可在remote和GitHub上复制名称更改:

步骤1 git branch -m old_branchname new_branchname

步骤2 git push origin :old_branchname new_branchname


#30楼

如果要在指向任何分支时重命名分支,请执行以下操作:

git branch -m <oldname> <newname>

如果要重命名当前分支,可以执行以下操作:

git branch -m <newname>

一种记住方式是-m表示“移动”(或mv ),这是您重命名文件的方式。

如果您使用的是Windows或其他不区分大小写的文件系统,并且名称中有大小写更改,则需要使用-M ,否则git会抛出分支已经存在的错误:

git branch -M <newname>

如何重命名本地Git分支?相关推荐

  1. 把本地git分支合并到Dev分支

    把自己分支合并到Dev分支 git add . # 提交到暂存区 git commit -m "提交备注" # 把暂存区文件提交到本地仓库 git push 自己分支名 # 本地上 ...

  2. 本地Git分支出问题,无法找到远程对应分支(fatal: ‘anne-new-dev-3.4.2‘ does not appear to be a git repositoryfatal: Cou)

    报错信息( fatal: 'anne-new-dev-3.4.2' does not appear to be a git repository fatal: Could not read from ...

  3. Git查看、删除、重命名远程分支和tag

    本文链接:http://zengrong.net/post/1746.htm 这篇文章记录我在使用git的过程中碰到远程分支和tag的相关内容,提纲: 查看远程分支 删除远程分支和tag 删除不存在对 ...

  4. Git查看、删除、重命名远程分支和tag【转】

    转自:http://zengrong.net/post/1746.htm 本站文章除注明转载外,均为本站原创或者翻译. 本站文章欢迎各种形式的转载,但请18岁以上的转载者注明文章出处,尊重我的劳动,也 ...

  5. linux中tags文件能删除吗,Git 详细介绍查看、删除、重命名远程分支和tag

    Git 详细介绍查看.删除.重命名远程分支和tag 1. 查看远程 分支加上-a参数可以查看远程分支,远程分支会用红色表示出来: xiaosi@Qunar:~/code/qtown-score$ gi ...

  6. git 查看、创建、切换、删除、重命名和推送分支

    1.查看本地所有分支:前面有 "*" 的是当前所处的分支 $ git branchtest-A * test-B 2.查看本地和远程服务器的所有分支: $ git branch - ...

  7. 重命名master分支

    从您现有的项目中替换master,替换本地和远程现有分支上的单词重名分支. 1.首先,我们必须在本地更换master分支. 我这里有一个项目.我运行git branch -m master princ ...

  8. 如何重命名Git标签?

    今天,我在日志中寻找一个项目,并意识到一段时间前我已经用了一个胖胖的标签名. 有什么办法可以重命名标签? Google并未提供任何有用的信息. 我意识到我可以签出加标签的版本并制作一个新标签,我什至尝 ...

  9. 【git系列】重命名文件后为何就是untracked状态了 以及 应该如何正规地修改文件呢

    在日常开发过程中,有一次对项目中的某文件名称进行了修改,然后在用$git status查看状态的时候,发现这个文件变成untracked状态了: 重命名文件/文件夹后为何就是untracked状态了 ...

最新文章

  1. 腾飞资本任溶 :互联网大脑,新的天方夜谭?—评《崛起的超级智能》
  2. juddi MySQL_JUDDI v3部署并连接MySQL数据库
  3. 在Android Studio中进行代码混淆
  4. python二分法排序_python实现快速排序的示例(二分法思想)
  5. gcc汇编汇编语言_什么是汇编语言?
  6. mysql错误代码1怎样解决_打开网页提示mysql发生错误,错误号1194,请问下该怎么解决? 爱问知识人...
  7. 成功申请MVP,晒晒来自微软的奖品
  8. mysql中set names_深入理解mysql SET NAMES和mysql(i)_set_charset的区别
  9. XML案例——Jsoup网页爬虫 XML配置参数
  10. 元胞自动机简介(美赛复习一)
  11. ukey其他错误_关于税务UKey使用常见问题解答
  12. 电商格局谋定重整-万祥军:李玉庭对话中国经济和信息化
  13. 华为公司“22个不”
  14. UWB定位系统部署原则
  15. 计算机表格简单教程视频教程,电脑如何制作表格步骤 教你制作简单的excel表格...
  16. 典型相关分析及相关知识
  17. hub设备_是快充能手 更是HUB拓展管家 你的移动电源何必仅仅只能充电
  18. 《财务自由之路I》阅读笔记2021-03-16
  19. 什么软件能测试电脑能不能玩lol,怎么判断自己的电脑能不能玩lol_电脑配置检测的方法 - 驱动管家...
  20. 【eCPRI】(1)基本概念

热门文章

  1. android gradle 给所有的buildFlavor 的versionName 增加一个后缀
  2. Android 蓝牙启动流程(以及设置蓝牙为作为sink模式 接收端模式)
  3. Jquery mobile技术咖们走进来瞧瞧吧
  4. Java学习笔记11
  5. Hadoop完全分布式HA环境搭建
  6. Swift中@IBDesignable/@IBInspectable的使用
  7. (Mac-使用问题)Mac升级到 10.12后,下载的一些安装包提示损坏。
  8. k8s系列---部署集群
  9. Python创建二维数组(关于list的一个小坑)
  10. winform控件大小改变是防止背景重绘导致的闪烁