【发布时间】:2016-11-30 16:59:12
【问题描述】:
我重新设置了我的分支,其效果是将一些提交置于我自己的之上。然后意识到我忘记了压缩一些提交,所以很难重置和压缩。现在我需要把这些提交带回来。但是变基再次告诉我当前分支是最新的,即使它不是。有没有办法解决这个问题?
编辑:
有两个分支:a 和 b。两者都是从 master 分支的。两者都与主人保持同步。分支 a 有一些变化。我希望分支 b 也有这些更改。我将分支 a 重新定位到 b。最新的提交来自分支 a。我的意思是在提交之前压缩三个提交。我硬重置到最新提交之前。然后我压扁了。现在我想以一种在将分支 b 合并到 master 时不会引起头痛的方式取回最新的提交。
我试过reflog 和git reset --hard HEAD@{n} 但同样的问题:当前分支是最新的。
【问题讨论】:
-
“我重新设置了我的分支,它的效果是把一些提交放在我自己的上面。”不是相反(将你的提交放在你重新建立的分支之上)?
-
"so hard reset" 硬重置哪个分支到哪个版本?
-
这个answer 将有助于了解重新定位的工作原理