在克隆仓库时出现Git冲突复制错误

18

我正在使用Dropbox作为Git存储库。

现在由于同步问题,在Git中存在一些冲突的副本。我该如何解决这个冲突? 由于这个冲突,我无法克隆该存储库的内容。

当我尝试克隆存储库时,出现以下错误:

Git:fatal: Reference has invalid format: 'refs/heads/debugging (xyz conflictedcopy date) '


5
使用Dropbox作为Git仓库是一个非常糟糕的想法。 - James M
1
完全相同的问题..今天是我在Dropbox上使用Git的第4年,你有用SourceTree吗?尽管还没有找到解决方案..但refs/heads/debugging下没有任何冒犯性的东西.. - Frank R.
1
好的,没有解决方案,但有一个更新。我已经发现这是在最近的git版本中引入的一项严格检查措施,并且有一些讨论要将其更改为允许用户继续使用存储库。http://marc.info/?l=git&m=132009090127795&w=2 - Frank R.
@JamesMcLaughlin 是的,那很好用 :) 我想...我只是移除了冲突的副本,现在它运行得很好。将此作为答案添加即可。我会接受它。 - Akash Deshpande
一个临时的解决方案是回退到早期的git版本。如果像我一样你在Mac上并且使用Lion,你应该已经安装了1.7.5.4版本的/Developer/usr/bin/git,并且那个版本可以正常工作。这可能比破坏你的存储库更好的解决方案。 - Frank R.
显示剩余10条评论
3个回答

22
Just delete every file in <Repo>/.git/ which ends in (... conflictedcopy <date>).

这将清理您的git仓库;Frank R.的答案实际上也是同样的方法,同时保留了Dropbox滥用的文件 :)


12

应用kenansulayman和Frank R.的解决方案的快速方法是使用以下命令,应该从有问题的仓库根目录下运行:

find .git -name '*conflicted*' -exec rm {} \;

注意:我假设您的任何分支、标签(或其他git对象)的名称中都没有字符串conflicted。如果有,该命令也会删除那些想要的文件。

这对我有用。干杯。


为了参考我们的答案,您可以将其作为评论添加。 - 19h
11
我的想法是最大限度地帮助游客。但是,作为评论,这个提示不会得到同样的关注,并且它的格式可能不太稳定。 - pagliuca

5
我的解决方案是删除引用所指向的分支,例如:
git branch -D "debugging (xyz conflictedcopy date)"

我有许多这样的参考资料,所以就是“洗涤和重复”。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接