Git:修复无效合并

时间:2015-06-16 21:13:26

标签: git merge

我们的GIT仓库合并错误,导致文件状态为:

<<<<<<< HEAD
        <version>8.0.0.0-SNAPSHOT</version>
=======
        <version>7.9.0.7-SNAPSHOT</version>
>>>>>>> b99c9817a1a078b3cce7679fb3ba51065d5f86bb

有没有办法可以提示GIT重做合并?

通常我们会遵循合并流程:

git checkout myproj-xyz
git merge origin/myproj-newfeature
git mergetool
git status
git difftool --dir-diff 
git commit -m "Merge"
git push

2 个答案:

答案 0 :(得分:1)

只要您将更改推送到遥控器,最好不要进行任何重置。

找出哪些文件存在冲突,修复它们并在破坏的合并提交之上提交。

编辑:为了找出哪些文件存在冲突,只需重新进行合并。

答案 1 :(得分:1)

假设您希望保留之后没有提交,您可以执行以下操作。我假设您在进行合并时处于提交A,并且正在提交B中合并。我还假设您正在合并的是master:

git checkout A -b temp-branch
git merge B
#resolve the conflicts correctly, but do not commit
git reset --soft master
git commit -m "Merging, take 2"
git checkout master
git merge temp-branch
git branch -d temp-branch

现在,如果在你要保留的合并之后 提交,你将需要在上述步骤之后将它们挑选到master上。