Reordering allows you to alter your commit history to provide a more meaningful progression of commits. GitHub Desktop allows you to drag-and-drop commits in your branch's history to reorder them.
- In GitHub Desktop, click Current Branch.
- In the list of branches, click the branch with the commits that you want to reorder.
- Click History.
- Drag the commit that you want to reorder and drop it between two adjoining commits. While the application reorders the commits, a Reorder in process dialog indicates the progress of the change.
When you reorder commits, you may see one of the following notifications or error messages.
A notification states that the requested change to the branch will require a force push to update the remote branch. This is shown when the commits that you reordered were previously pushed to the remote branch. Force pushing alters the commit history of the branch and will affect other collaborators who are working in that branch. Select Begin reorder to start the reorder, and then click Force push origin to push your changes.
An error states that the reorder failed because there is a merge commit among the reordered commits.
A notification is shown indicating that there are uncommitted changes present on your current branch. Select Stash Changes and Continue to store the changes and proceed, or select Close to dismiss the message and commit the changes. When there are no longer any uncommitted changes, you can reorder your commits.
A message states that there are merge conflicts that you must resolve before the application can continue reordering commits on your branch.
- Click View conflicts to see the conflicts.
- Resolve any merge conflicts in your preferred way, using a text editor, the command line, or another tool. For more information, see "Addressing merge conflicts."
- When all conflicts are resolved, you can reorder your commits.