我的Git分支名称存在一些问题。
我想重命名远程分支' a / develop'到' a / develop / 1.0'。
但无法重命名。 :(
我的代码如下。
git branch -m a / develop / 1.0
git push origin:a / develop a / development / 1.0
错误消息无法锁定
我的命名代码是什么问题? 请回答我的问题。 谢谢!〜
答案 0 :(得分:3)
(从你的问题不清楚哪个命令失败;我假设第一个失败了。)
这里的根本问题是名称a/develop
是a/develop/
目录/文件夹中的“在路上”(选择您最喜欢的词,这两者在这里意味着相同的东西)必须按顺序存在名称a/develop/1.0
存在。
现在,在重命名a/develop
到a/develop/1.0
之后,显然,a/develop
本身不再用作分支名称。但在重命名之前完成,a/develop
就是。如果Git正在执行“创建目录/文件夹并重命名”作为单个操作,它将起作用 - 但事实并非如此:Git首先尝试创建目录/文件夹,但a/develop
阻碍,所以该部分失败,然后Git永远不会重命名a/develop
。
解决方案是暂时将a/develop
重命名为其他内容,例如a/b
。现在a/develop
不存在,可以将a/b
重命名为a/develop/1.0
。
请注意,如果您这样做,并且如果a/develop
存在于您的“上游”(您git push
),则上游将遇到同样的问题:它将无法创建a/develop/1.0
因为它自己的a/develop
会阻碍它。您将需要相同的两步流程(重命名或删除,并在重命名或创建之前完成)。