重新排序本地提交

Tay*_*nir 2 git git-rebase

我想在我的本地分支重新排序 git 提交,目前,我的分支看起来像这样。

xxxxxxx-0-1-2-3

现在我想将顺序更改为以下

xxxxxxx-0-2-1-3 怎么用git来做呢?

Tim*_*sen 8

您可以使用交互式变基:

git rebase -i HEAD~4
Run Code Online (Sandbox Code Playgroud)

这将打开一个如下所示的编辑器:

pick 39vm3ie commit 0
pick md93ndj commit 1
pick 25sf3kd commit 2
pick 03kdoj3 commit 3
Run Code Online (Sandbox Code Playgroud)

请注意,最后四个提交按从最旧的在顶部到最新的在底部的顺序显示。由于您想更改 1 和 2 提交的顺序,因此可以按如下方式重新排列它们:

pick 39vm3ie commit 0
pick 25sf3kd commit 2
pick md93ndj commit 1
pick 03kdoj3 commit 3
Run Code Online (Sandbox Code Playgroud)

现在只需保存编辑器并关闭,这将启动变基。您可能必须解决一些合并冲突,因为变基会重写历史。请注意,由于您正在重写历史记录,因此在可能已被其他开发人员签出的公共分支上可能应该避免使用此选项。