我有一个看起来像这样的主题分支。(分支主题当前指向'a0a0')
- a0a0 将分支“主”合并到主题中
- b1b1 将分支“主”合并到主题中
- c2c2 将提交“来自主人的东西”合并到主题中
- d3d3 将分支“主”合并到主题中
- e4e4 将分支“主”合并到主题中
- f5f5 将分支“主”合并到主题中
- 6666 一个实际的提交
- [关于主题分支的大量历史]
- 9999 原始发散点
如何将 a0-f5 变成单个合并提交?
我已经尝试过:git rebase -i f5f5
目的是将它告诉这squash
5 个提交,但它只是在 f5f5 和 a0a0 之间的主分支上给出了每个提交。所以我把除了第一个和最后一个之外的所有东西都pick
变成了squash
,但这变得疯狂了,并且将 master 的每一个提交重新定位为一个巨大的提交,而不是所有的合并,失去了它是一个“合并”的事实。这不是我所期望的!
我可以:
$ git reset 6666
$ git merge Master
但这需要我重新进行任何合并提交。
那么如何将这些不同的合并压缩成一个合并提交,它知道这是一个合并,并且还保留所有合并冲突的东西?