您最终得到的是空合并提交(两个父母)还是只是一个空提交?在后一种情况下,您可以删除.git/MERGE_HEAD。
更新:除了MERGE_HEAD手动删除,您还可以使用git merge --abort(从git 1.7.4开始)或git reset --merge(从git 1.6.2开始)。
还值得一提的是,至少从git 1.8.3起(可能更早吗?),status如果正在进行实际的合并并需要提交(--no-commit例如,如果指定了),则应该看到这样的消息:
# On branch master
# All conflicts fixed but you are still merging.
# (use "git commit" to conclude merge)
#
nothing to commit, working directory clean
如果您没有看到此消息并仍然收到MERGE_HEAD警告,则说明出现了一些混乱,您可能应该只是--abort回到干净的状态。
评论中的其他详细信息
在合并期间,git在.git文件夹的根目录(HEAD,ORIG_HEAD,可能是FETCH_HEAD等旁边)中创建一个MERGE_HEAD文件,以跟踪有关正在进行的合并的信息(特别是提交的SHA) )被合并到当前HEAD中)。如果删除它,Git将不再认为正在进行合并。显然,如果合并确实在进行中,则您不想删除此文件。