假设提交的结构如下所示:
B'---C' X'
/ \ / \
A---B---C---D---...---X---Y---Z(master)
现在我需要剥离 A 和 X 之间的所有提交,
X'
/ \
A---X---Y---Z
AFAIK,至少有两种方法可以实现这一目标:
- git rebase -i A
- git 分支 -f new_branch A; git rebase --onto master X
但总有一些冲突需要我手动处理。
由于我只想清除A之后和X之前的所有提交,并且我不需要在每次提交之后更改任何 git 跟踪结果(例如,新生成的提交 X 与旧的 X 提交共享相同的内容),有更简单的方法吗?