这比我之前发现的线程要复杂一些。说我有一个分支,有一堆提交。在某个时候,我意识到我不想要一些隐蔽的提交(这是由错误的合并引起的)。所以历史是这样的:
e48ca7de8t
a263f02809 --> unwanted commit
59d785a8e2 --> unwanted commit
2045cc737a
59c2a4127c
f9daf617sj
5f59c2a412
HEAD
基本上,我想摆脱两个不需要的提交。这可能吗?
我想我可以git reset HEAD~
一遍又一遍地做下去,直到达到我不想要的内容为止,隐瞒所做的更改,然后对git reset --hard
我想要的最后一个进行操作。但是我想知道是否有一种更清洁,更安全的方法来做到这一点。
谢谢!
您可以用来git rebase --onto
将一系列提交重新设定为特定的提交。对于上面的示例(假设分支名称为mybranch
:
git rebase --onto 2045cc737a e48ca7de8t mybranch
这样不需要的提交
a263f02809 --> unwanted commit
59d785a8e2 --> unwanted commit
在重新定级过程中被排除在外。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句