问题描述
如果用mercurial,只能到b分支中硬还原代码了。
git有智能的方式吗?
问题解答
回答1:“想从b中还原a改过的内容”,如果是撤销分支合并操作,请尝试git reset/revert {commit}
可以先用git reflog查看HEAD指针变更,比如:
de51e3d HEAD@{0}: merge nnn: Fast-forward4430e82 HEAD@{1}: checkout: moving from nnn to masterde51e3d HEAD@{2}: commit: commit24430e82 HEAD@{3}: checkout: moving from master to nnn4430e82 HEAD@{4}: commit (initial): test
然后比如git reset HEAD@{2}返回某一次提交
回答2:可以直接针对未合并之前的commit 做一个新的分支 这样什么都不会丢失

