我如何重命名尚未被推到远程仓库的本地分支 ?
相关:
重命名本地和远程 Git 仓库的主分支 ?
我如何重命名尚未被推到远程仓库的本地分支 ?
相关:
重命名本地和远程 Git 仓库的主分支 ?
当前回答
我愚蠢地命名了一个分支,从连字符开始,然后检查了主人。我不想删除我的分支,我在里面有工作。
这两种办法都行不通:
git 检出 - dumb- name
git 检出 -- -- -dumb-name
"s,'s和\s也没有帮助。 git 分支 -m不工作。
我终于把它修好了。 进入您的工作副本 . git/ refs/ heads, 找到文件名“ - dumb- name ” , 获取分支的大麻。 然后, 这将检查它, 制造一个新的有正常名称的分支, 并删除旧的分支 。
git checkout {hash}
git checkout -b brilliant-name
git branch -d -- -dumb-name
其他回答
所有你必须做的是三步:
在.git/refs/head 下给旧分支以.git/refs/head 下的新名称 给旧分支以.git/log/refs/head 下的新名称 更新 .git/HEAD 以导致您的新分支名称 。
另一个选项是完全不使用命令行。 Git GUI 客户端, 如 SourceTree , 拿走了导致像此这样的问题成为Stack 溢流中最受关注的问题的学习周期曲线 / 疼痛 。
在 SourceTree 中,右键单击左侧“ Branches” 窗格中的任何本地分支并选择“ 重命名... ” 。
重命名当前分支 :
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 中重命名本地和远程分支
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
更新2023年最新情况
在开始之前, 请确定您已经选择了您想要重命名的分支 :
git checkout old-name
如果您想要看到本地所有的分支,请使用以下命令:
git branch --list
当你们清清楚楚时,
使用 Git 重命名分支命令需要您在您的命令中添加一个 - m 选项 : git 分支 - m 新名称 您也可以使用以下两个命令从另一个分支重命名本地分支 : git checkout master git 分支 - m 旧名新名称 最后, 此命令将列出所有本地和远程分支, 以核实它是否被重新命名 : git 分支 - a
虽然无法直接重命名一个远程分支, 但重命名一个分支的过程包括两个简单步骤:
要开始, 您需要按照前几个步骤重新命名本地分支 。 2. 然后删除旧分支, 并按下新分支 。 您可以在以下命令下轻松地做到这一点 : git 推推源 : old- name new - name 重设您新本地分支的上游分支 , 您将全部设置为: git 推源 - u new - name