Git合并问题

时间:2012-05-02 00:11:58

标签: git version-control merge git-merge

我对git很新,所以我仍然使用该工具。

我有一个涉及合并的“小”问题。基本上时间表如下:

  1. 使用git-svn bridge
  2. 从SVN进行了改动
  3. 我合并但从未犯过的冲突
  4. 其他工作......很多并且进行了许多其他更改
  5. 试图推动并“致命:你还没有结束你的合并MERGE_HEAD存在”
  6. 我按http://www.btaz.com/scm/git/git-fatal-you-have-not-concluded-your-merge-merge_head-exists/
  7. 的建议做了“git reset --merge ORIG_HEAD”
  8. 修复合并问题
  9. 愚蠢地改变并推动
  10. 现在我意识到在最后一次合并中有一些变化已经消失了,我想知道如何最好地撤消合并并获取git以允许我将我的更改推送到原点?

    我希望我已经明确了这个问题......如果没有打败我的话

2 个答案:

答案 0 :(得分:2)

我不确定如何修复它,但git reflog是一个非常强大的工具。它会告诉你回购中发生的一切。然后,例如,即使它们不在工作主分支中,您也可以从历史中挑选提交。

答案 1 :(得分:0)

使用前面提到的git reflog命令找到你的"丢失"提交。您可以使用git show查看每个提交。然后,我会建议将这些提交一次性完成合并到当前分支中。显然你应该随时测试(你确实有单元测试吗?:-)。一旦您选择了所有提交,您就可以自由推送更改。