2013-09-24 78 views
0

我有一个问题,它不会让我推或拉,因为'未合并的变化'。 我试图git rm有冲突的本地文件,因为我可能只是拉动远程文件并重做更改,但事情变得更糟。Git拉和无视合并

我越来越:

CONFLICT (modify/delete): xxx deleted in HEAD and modified in 03907b23b68fb8337d12d784b4415c. Version 03907b23b68d3f94f87 of xxx left in tree. 
Automatic merge failed; fix conflicts and then commit the result. 

我该如何解决这个问题,并避免它的未来?

回答

1

您可以尝试使用(这将删除任何本地更改):git reset --hard HEAD在预拉状态下将您的工作副本和索引完全重置为HEAD。这样做会将整个存储库重置为HEAD状态(您可以在此处指定任何提交),删除任何合并信息,也可以删除本地更改。

阅读文档,了解详情:在使用Git合并,以避免将来出现问题的提示https://www.kernel.org/pub/software/scm/git/docs/git-reset.html

检查这个讨论: How to resolve merge conflicts in Git?

+1

优秀的答案IMO。本地更改必须合并或丢弃。 git应该怎么处理它们呢? – Vorac

+0

我试过这个,但是pulling给出了同样的错误。 – pguardiario

+0

您是否尝试将其重置为以前的提交,例如运行'git reset --hard HEAD〜'(注意*〜*)?这将删除HEAD提交,所以如果包含未经修改的更改,则不适合您。如果您不关心最后的x个提交(因为它们始终位于原始库中),请尝试使用此选项。 – Nihathrael