# Reordenar commits no GitHub Desktop

Você pode usar GitHub Desktop para reordenar commits no histórico do seu branch.

## Sobre reordenar um commit

A reordenação permite que você altere o seu histórico de commit para fornecer um progresso mais significativo de commits. GitHub Desktop permite que você arraste e solte commits no histórico do seu branch para reordená-los.

## Reordenando um commit

1. No GitHub Desktop, clique em **<svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-git-branch" aria-label="git-branch" role="img"><path d="M9.5 3.25a2.25 2.25 0 1 1 3 2.122V6A2.5 2.5 0 0 1 10 8.5H6a1 1 0 0 0-1 1v1.128a2.251 2.251 0 1 1-1.5 0V5.372a2.25 2.25 0 1 1 1.5 0v1.836A2.493 2.493 0 0 1 6 7h4a1 1 0 0 0 1-1v-.628A2.25 2.25 0 0 1 9.5 3.25Zm-6 0a.75.75 0 1 0 1.5 0 .75.75 0 0 0-1.5 0Zm8.25-.75a.75.75 0 1 0 0 1.5.75.75 0 0 0 0-1.5ZM4.25 12a.75.75 0 1 0 0 1.5.75.75 0 0 0 0-1.5Z"></path></svg> Current Branch**.

   ![Captura de tela da barra do repositório. Um botão chamado "Ramo Atual" com uma seta para baixo indicando um menu suspenso é contornado em laranja.](/assets/images/help/desktop/current-branch-menu.png)

2. Na lista de branches, clique no branch com os commits que você deseja reordenar.

   ![Captura de tela da exibição suspensa "Ramificação atual". Em "Branches Recentes", um ramo chamado "my-feature" está destacado com um contorno laranja.](/assets/images/help/desktop/select-branch-from-dropdown.png)

3. Na barra lateral esquerda, clique em **Histórico**.

   ![Captura de tela da guia "Histórico" na barra lateral. Acima de uma lista de confirmações, o botão da guia "Histórico" está realçado com um contorno laranja.](/assets/images/help/desktop/history-tab-in-commit-sidebar.png)

4. Arraste o commit que você deseja reordenar e solte-o entre dois commits adjacentes.

   ![Captura de tela de uma lista de commits na guia “Histórico”. O cursor passa sobre uma linha fina entre dois commits enquanto um deles é movido; observe o ícone “um”.](/assets/images/help/desktop/reorder-drag-and-drop.png)

Enquanto o aplicativo reordena os commits, uma caixa de diálogo **Reordenação em processo** indica o andamento da alteração.

## Mensagens de erro ao reordenar commits

Ao reordenar seus commits, você pode ver uma das seguintes notificações ou mensagens de erro.

* Uma notificação afirma que a alteração solicitada no branch exigirá um push forçado para atualizar o branch remoto. Isto é mostrado quando os commits que você reordenou anteriormente foram enviados por push para o branch remoto. O push forçado altera o histórico de commit do branch e afetará outros colaboradores que estão trabalhando nesse branch. Selecione **Iniciar reordenação** para iniciar a reordenação e clique em **Forçar a origem do push** para efetuar push das alterações.
* Um erro afirma que ocorreu uma falha ao reordenar porque há um commit de merge entre os commits reordenados.
* Uma notificação é exibida indicando que há alterações não confirmadas presentes na sua ramificação atual. Selecione **Stash Alterações e Continuar** para armazenar as alterações e prosseguir, ou selecione **Fechar** para descartar a mensagem e confirmar as alterações. Quando não existirem mais alterações não comitadas, você poderá reordenar seus commits.
* Uma mensagem afirma que existem conflitos de merge que você deve resolver antes que o aplicativo possa continuar reordenando os commits no seu branch.
  1. Clique em **Exibir conflitos**.

     ```
            ![Captura de tela de uma notificação sobre conflitos. No final da mensagem, um link, intitulado "Exibir confirmações", é realçado com um contorno laranja.](/assets/images/help/desktop/reorder-resolve-conflicts.png)
     ```

1. Resolva os conflitos de mesclagem da maneira preferida usando um editor de texto, a linha de comando ou outra ferramenta. Para saber mais, confira [Resolvendo conflitos de mesclagem](/pt/pull-requests/collaborating-with-pull-requests/addressing-merge-conflicts).

   1. Quando todos os conflitos forem resolvidos, você poderá reordenar os seus commits.

## Leitura adicional

* [Opções para gerenciar commits no GitHub Desktop](/pt/desktop/managing-commits/options-for-managing-commits-in-github-desktop)