如果我有这样的提交历史记录:
A-B-C-------G-H-J-K (master)
\ /
D-E-F
如何将A和K之间的提交压缩到一个提交Z:
A-Z-K (master)
?
最佳答案 首先,执行:
git rebase -i A
这将在文本编辑器中显示提交列表,以B开头,以K结尾.
您必须将提交C,D,E,F,H和J前面的文本选择更改为s或squash.不要在B或K前面更改选择.请注意,提交G应该丢失,因为它是合并提交.
最后,保存并退出编辑器.这将开始实际的变基.
结果将是这样的:
A-Z-K' (master)
\
B-C-------G-H-J-K (no branch)
\ /
D-E-F
没有分支的部分最终将被垃圾收集删除.