我将我的回购保存在Dropbox中,有一天(见下面的日期)它疯了。现在,每当我尝试自动填充分支名称时,我都会收到这些警告
warning: ignoring ref with broken name refs/heads/develop (MacBook Pro's conflicted copy 2015-02-28)
warning: ignoring ref with broken name refs/heads/master (MacBook Pro's conflicted copy 2015-02-28)
warning: ignoring ref with broken name refs/remotes/origin/develop (MacBook Pro's conflicted copy 2015-02-28)
warning: ignoring ref with broken name refs/remotes/origin/master (MacBook Pro's conflicted copy 2015-02-28)
warning: ignoring ref with broken name refs/remotes/production/master (MacBook Pro's conflicted copy 2015-02-28)
如何修复这些警告?
注意:对于所有重复触发快乐的人 - 这不是重复!我只想删除上面的引用以停止获取警告。 git repo完好无损
答案 0 :(得分:27)
当dropbox找到有冲突的文件时,会将这些文件重命名为filename (conflicted copy)
(您可能知道)。所以你只需要重命名这些文件:
这可能是一个相当微妙的练习,因为你会搞乱你的git目录;最好首先获取整个存储库的副本。现在进入这个目录
cd <repo>/.git/refs/heads
您将在那里找到那些重命名的文件。您必须检查要保留哪一个(正常或相互冲突的副本),并删除不需要的,根据需要重命名冲突的副本。你必须在另一个目录中做同样的事情:
修改强> 您将找到的每个文件都包含它们指向的提交的哈希值。所以,如果你想检查要保留哪一个;检查哪些提交确实存在,以及这些引用指向的位置。
答案 1 :(得分:1)
我可能在更新我的git版本(ubuntu 15.04到15.10)之后得到了这个警告,并且只需要删除.git / refs / remotes中的目录,用于旧的悬挂式遥控器我不再实际配置。
答案 2 :(得分:0)
我通过运行
修剪了不再在遥控器上的分支git remote prune origin
这解决了我的问题。