在没有合并提交的情况下恢复git合并
我把一个特写从开发中分离出来。我在那个功能分支上做了几次提交。然后,我将该功能分支合并回develope,并将所有内容推到原点 我只是注意到git做了一个我并不想要的快进动作。是否可以恢复该合并?在git日志中,没有提交合并(在执行合并时也没有要求我发表评论)在没有合并提交的情况下恢复git合并,git,git-merge,Git,Git Merge,我把一个特写从开发中分离出来。我在那个功能分支上做了几次提交。然后,我将该功能分支合并回develope,并将所有内容推到原点 我只是注意到git做了一个我并不想要的快进动作。是否可以恢复该合并?在git日志中,没有提交合并(在执行合并时也没有要求我发表评论) 如果重要的话,自我推动合并以来,没有任何变化。如果您仍然拥有功能分支,则可以执行以下操作: 警告:只有在100%确定自提交后开发中没有更改要删除的内容时,才应执行以下操作 查找合并前开发上最后一次提交的SHA。(即合并前的开发状态) 在开
如果重要的话,自我推动合并以来,没有任何变化。如果您仍然拥有功能分支,则可以执行以下操作: 警告:只有在100%确定自提交后开发中没有更改要删除的内容时,才应执行以下操作
git reset --hard <sha-of-old-develop>
现在,存储库应该恢复到合并前的状态。快进没有定义的合并提交:唯一执行的操作是重新定位
develope
分支。因此,可以使用以下命令还原该更新:
git checkout develop # Go back to develop
git reset --hard develop@{1} # Reset develop to its previous location
git push --force-with-lease origin develop # Push it, discarding the fast-forward
然后,如果要强制合并提交事件为空,请使用--no ff
标志:
git checkout develop
git merge --no-ff feature/<x>
git签出开发
git合并--没有ff特性/
git checkout develop
git merge --no-ff feature/<x>