我在回购中有一个丑陋的历史记录,我想精简它 - 它有点。从我读过的,git rebase会是我应该使用的工具。我想要做的是:清算历史:压缩A到B和D到E在Git中提交
打开本:
A--------------------------I (master)
\ /
B--C-------------G--H--/ (development)
\ /
D--E------/ (feature-1)
\ /
F--/ (feature-2)
进入这个:
A-BCDEFH--I (master)
后提交的“我”,我有相同的形式等提交,所以我会像我的最终历史看起来像:
A-BCDEFH--I--KLMNO-P (master)
任何指针在如何做到这一点?编辑:请注意,在这个例子中,D和F不是合并提交 - 它们是标准提交,所以它们都不应该从历史消失(尽管合并提交,G和我应该)。
你故意从你的最后历史保留了G& –
'G'是合并提交,所以当历史线性化时它没有真实的历史。 (对于这个问题,'I'也是这样......它也会在rebase中消失。) – cdhowie
在这个例子中,我忽略了合并提交。所以D和F是“实际”提交。我对这种困惑表示歉意 - 编辑。 – AeroCross