我有一个看起来像这样的主分支:
A-B- C -D-E-F
\ /
H-I
其中H和I是由另一个开发人员提交给同一个分支的,而D是合并I和C的提交。我想从提交H和I中删除所有代码。我基本上希望分支看起来像:
A-B-C-E-F
我的计划是:
git rebase --onto C E
git push origin master --force
没有其他开发人员拥有分支机构或分支机构或任何会令人不安的事情。这些命令会做我想要的吗?我不需要在rebase上使用-p标志吗?
答案 0 :(得分:0)
我最终使用了:
git rebase -i C
在rebase中会出现一个文档供您编辑,删除要删除的提交行(H和I)。然后我不得不修复一堆合并冲突,并最终调用:
git push origin master --force
我提交了大约9次提交,我想要删除,我必须合并5到6次,有时候同一个文件中的相同更改无论出于何种原因。如果您提交了100次提交,这可能不是一个好的答案。