How to conclude your merge of a file?
在Git中合并文件后,我尝试拉存储库,但出现错误:
You have not concluded your merge. (MERGE_HEAD exists)
如何完成合并?
检查存储库的状态(git status)。 每个未合并的文件(在您自己解决冲突之后)都应该添加(git add),如果没有未合并的文件,则应该git commit
-
提交文件,然后推送。
-
但是,如果所有内容都已提交(git status显示一个干净的工作目录)并且仍然发生上述错误怎么办?
-
@Marius确保您运行的是标准git status,而不是一些别名,它会过滤掉任何消息。在当前版本中,当您运行git status时,它会向您显示消息您应该做什么以"结束合并"。而且,如果您完全确定已合并所有内容,并且不会丢失任何内容,则只需删除.git / MERGE *中的文件,该文件将存储您尝试合并的内容以及该合并的默认提交消息
-
谢谢,那就是我最终所做的,但是不知何故,这似乎有问题。如果您合并并提交了所有内容,那么MERGE_HEAD如何存在?
-
是的,我遇到了与Marius相同的问题,进行了合并,解决了冲突,但是现在(以某种方式)没有要提交的内容。必须按照建议手动删除MERGE *文件。
-
rm -rf .git / MERGE *
-
@johndpope power(" tnx",100)
注意和更新:
从Git1.7.4(2011年1月)开始,您有了git merge --abort,在进行合并时,它等同于" git reset --merge"。
但是,如果您想完成合并,而又不需添加任何内容,那么粗糙的rm -rf .git/MERGE*就足以让Git忘记当前的合并。
-
如果删除MERGE_HEAD,结果提交是否只有一个父项,那么您将没有合并分支的历史记录?
-
@JasonGoemaat考虑到我们尝试中止合并,因此无论如何都不会出现"结果提交"。
我为此找到的最简单的解决方案:
1 2
| git commit -m"fixing merge conflicts"
git push |
-
实际上,对我来说-m没有工作,没有-m则工作。
-
@ Muaz-Al-Jarhi你应该看看user3127648s的答案
-
您能解释一下这是怎么回事吗?
如果在SourceTree中遇到此错误,请转到"操作">"解决冲突">"重新启动合并"。
使用的SourceTree版本是1.6.14.0
我遇到了同样的错误,我确实关注了在google上找到的文章,从而解决了我的问题。
您尚未完成合并
-
始终欢迎提供解决方案的链接,但请在答案中添加必要的信息,因为该链接可能已过期。