跳到主要内容

在 GitHub Desktop 中重新排序提交

你可以使用 GitHub Desktop 重新排序分支历史记录中的提交。

关于重新排序提交

重新排序允许你更改提交历史记录,以提供更有意义的提交过程。GitHub Desktop 允许你拖放分支历史记录中的提交以重新排序它们。

重新排序提交

  1. 在 GitHub Desktop 中,单击 当前分支.

    Screenshot of the repository bar. A button, labeled "Current Branch" with a downward arrow indicating a dropdown menu, is outlined in orange.

  2. 在分支列表中,单击包含要重新排序的提交的分支。

    Screenshot of the "Current Branch" dropdown view. Under "Recent Branches", a branch, named "my-feature", is highlighted with an orange outline.

  3. 在左侧边栏中,单击**历史记录**。

    Screenshot of the "History" tab in the sidebar. Above a list of commits, the tab button, labeled "History", is highlighted with an orange outline.

  4. 拖动要重新排序的提交,并将其放在两个相邻提交之间。

    Screenshot of a list of commits in the "History" tab. The cursor hovers over a narrow horizontal line between two commits, with a "one" icon indicating one commit is being moved.

在应用程序重新排序提交时,**正在重新排序**对话框会指示更改的进度。

重新排序提交时的错误消息

重新排序提交时,你可能会看到以下通知或错误消息之一。

  • 一条通知指出,对分支的请求更改将需要强制推送才能更新远程分支。当你重新排序的提交之前已推送到远程分支时,就会显示此消息。强制推送会更改分支的提交历史记录,并将影响在该分支中工作的其他协作者。选择**开始重新排序**以开始重新排序,然后单击**强制推送 origin**以推送你的更改。
  • 一条错误消息指出,重新排序失败,因为重新排序的提交中存在合并提交。
  • 显示一条通知,指示你的当前分支上存在未提交的更改。选择**暂存更改并继续**以存储更改并继续,或者选择**关闭**以关闭消息并提交更改。当不再有任何未提交的更改时,你可以重新排序你的提交。
  • 一条消息指出存在必须解决的合并冲突,然后应用程序才能继续重新排序分支上的提交。
    1. 单击**查看冲突**。

      Screenshot of a notification about conflicts. At the end of the message, a link, labeled "View commits", is highlighted with an orange outline.

    2. 使用文本编辑器、命令行或其他工具,以你首选的方式解决任何合并冲突。有关更多信息,请参阅“解决合并冲突”。

    3. 解决所有冲突后,你可以重新排序你的提交。

进一步阅读