2015-11-05 128 views
0

这是我的情况。我工作的MiniMaxAB分支(绿线)Git合并后无法还原

enter image description here

我不小心合并一个分支(紫色)到矿(绿色)和推它。这是愚蠢的(我刚开始学习git)并且对我们的目标不利。现在我想回复这个并撤消这个合并。因此我拿起最新的哈希承诺在合并前的绿枝,并试图恢复(因为15天老不是本图中可见):

git revert 86ed202152e719ae719654f7805bd2991f63fd29 

遗憾的是它不工作... 这是什么混帐说:

enter image description here

所以我试图与复位,其中工程

git reset 86ed202152e719ae719654f7805bd2991f63fd29 

但WH恩我推,我得到这个错误:

enter image description here

我怎样才能解决这个问题?

+0

我相信你有“unmereged”的文件(有一些冲突的文件,你还没有手动合并它)。改变你的显示'git状态'为我们 –

+0

这是重置后的git状态:https://gyazo.com/f2f07895c0ddf68b6b3536e7d2ffd754 –

+0

我认为'revert'你应该说提交撤消,而不是恢复至。对于“重置”和“推”,它不喜欢它,因为你已经改变了历史。你可以用'git push -f'强制推送它,但如果你的协作者已经提交了更新,这可能是一个坏主意。 – Steve

回答

0

您应该遵循以下步骤:

步骤1:手动合并您的冲突文件minmax_ab_engine.eticktactoe.e (打开这些文件并对其进行编辑)

第2步:添加由git add -A

上演

第3步:通过git commit -m 'merge conflict files提交这些文件

第4步:从远程提取更新git pull origin MiniMaxAb

第5步:把你的更新远程git push origin MiniMaxAb

在要恢复的情况下,可以绕过步骤4,5