我有一个git分支,每当我执行'git pull'时,不断地用一个交替的字母大小写'重新创建'.假设分支名称为'a'(或我知道的所有'A'),一个'git pull'将产生该行:
* [new branch] a -> origin/a
Run Code Online (Sandbox Code Playgroud)
然后下一个'git pull'将产生:
* [new branch] A -> origin/A
Run Code Online (Sandbox Code Playgroud)
这永远不会停止.我不知道分支是如何创建的(或它是什么),因为其他人创建了它.
我如何驯服这个分支并让它停止这样做?
正如在评论中提到的,无论refs/heads/A和refs/heads/a遥控器上的存在.这确实意味着那里存在两个不同的分支.(Git本身区分大小写,大多数非Windows文件系统也是如此.)
但是,如果您使用的是Windows,则可能会解释此问题.Refs被创建为单个文件,每个ref一个.Git在遥控器上看到两者,但是当它尝试在本地更新它们时,只有一个存在,所以另一个总是被创建.然后,两个操作的内部顺序必须使新创建的操作覆盖另一个操作,从而导致交替.
如果引用指向同一个提交,那么解决方案是在远程上删除其中一个:
git push origin :refs/heads/A
Run Code Online (Sandbox Code Playgroud)