Git 如何将合并展平为线性历史?

Git 如何将合并展平为线性历史?,git,Git,我刚刚同步了我的git回购协议,然后陷入了回归。我只想一步一步地浏览历史,直到我发现应该归咎于提交,但是有一个巨大的合并,当我执行git log时,它只显示为一个提交 有没有什么方法可以在我的本地分支中平展此合并,使git log有一个线性历史记录,我可以遍历它?就是您想要的 你要找的是 您可以通过git-rebase-i master对master重新设置基址。你应该看到类似的东西 pick ba6b4b7 Commit messages here pick 744ea3b Another c

我刚刚同步了我的git回购协议,然后陷入了回归。我只想一步一步地浏览历史,直到我发现应该归咎于提交,但是有一个巨大的合并,当我执行
git log
时,它只显示为一个提交


有没有什么方法可以在我的本地分支中平展此合并,使git log有一个线性历史记录,我可以遍历它?

就是您想要的

你要找的是

您可以通过
git-rebase-i master
对master重新设置基址。你应该看到类似的东西

pick ba6b4b7 Commit messages here
pick 744ea3b Another commit message
pick 33539d5 Commits all around!

然后,您可以将第一个后的“拾取”更改为“挤压”。这将把他们都挤到最高层。您还可以将顶部的“pick”更改为“fixup”以更改其提交消息。

除了实际的重基外,您还可以微调查询
git log--topoorder$head
将在每次合并提交后列出合并分支的所有内容。看起来就像你重新设定了那个分支的基址