我想在git存储库中崩溃一些丑陋的合并,而不必重新设置自那以后发生的所有提交。例如:
* sha0 *
| ... ~50 commits | ... ~50 commits
* *
* sha1 --> * sha1
|\ * sha2
* * *
* |\ ...
|/ *
* |
* /
| /
|/
* sha2
*
...
最好的方法是做什么?
编辑:
在其中一个回复中尝试了一个建议后,我意识到我应该澄清:
答案 0 :(得分:1)
最终你将最终变基。一种简单的方法是在sha1
创建临时分支,然后创建soft reset
,然后重新设置。
git checkout -b temp_branch sha1
git reset --soft sha2
git commit -m <message>
git checkout master
git rebase --onto temp_branch sha1
git branch -d temp_branch