Desfazer alterações
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
Visual Studio 2019 | Visual Studio 2022
Quando você quiser desfazer alterações em um repositório do Git, primeiro decida que tipo de alterações deseja desfazer. Por exemplo, você pode querer:
- Descarte as alterações não confirmadas em um arquivo revertendo o arquivo para sua última versão confirmada. Você também pode reverter um arquivo para qualquer versão confirmada.
- Reverta um branch para um estado anterior redefinindo-o para um commit anterior.
- Desfaça as alterações feitas por um commit compartilhado criando um novo commit que inverte as alterações. Como essa abordagem não reescreverá o histórico de commit existente, ela é adequada para reverter as alterações feitas por commits que foram enviadas por push e estão em uso por outras pessoas.
- Altere seu último commit para modificar seu conteúdo ou mensagem. Para obter mais informações, consulte Como atualizar seu último commit.
- Corrija um problema introduzido em um commit anterior criando um novo commit que inclui a correção. Para obter mais informações, confira Como criar um commit.
Neste artigo, você aprenderá a:
- Descartar alterações não confirmadas em um arquivo
- Reverter um branch para um estado anterior
- Desfazer as alterações feitas por um commit compartilhado
Descartar alterações não confirmadas em um arquivo
Se você tiver feito alterações em um arquivo, mas não tiver confirmado essas alterações, poderá usar o check-out do Git para descartar rapidamente as alterações e reverter o arquivo para sua última versão confirmada.
O Git checkout
também pode reverter um arquivo para qualquer versão confirmada quando você especifica o ID do commit.
Aviso
Se houver uma chance de você querer reaplicar as alterações que o Git checkout
descartaria, considere stash essas alterações.
- Visual Studio 2022
- Visual Studio 2019 - Menu Git
- Visual Studio 2019 - Team Explorer
- Linha de comando Git
O Visual Studio 2022 fornece uma experiência de controle de versão do Git usando o menu Git, as Alterações do Git e através dos menus de contexto no Gerenciador de Soluções. O Visual Studio 2019, versão 16.8, também oferece a interface do usuário do Git do Team Explorer. Para saber mais, consulte a guia Visual Studio 2019 - Team Explorer.
O Visual Studio dá suporte a descarte das alterações não confirmadas em um arquivo revertendo o arquivo para sua última versão confirmada.
Na janela Alterações do Git, identifique o arquivo com as alterações que você deseja descartar. Se o arquivo estiver na seção Alterações preparadas, clique com o botão direito do mouse nela e escolha Cancelar preparação. Os arquivos não preparados aparecem na seção Alterações.
Se o arquivo estiver na seção Alterações, clique com o botão direito do mouse nela e escolha Desfazer Alterações para descartar todas as alterações no arquivo desde a última confirmação.
Reverter um branch para um estado anterior
Você pode reverter um branch para um estado anterior usando a redefinição do Git para redefinir o branch para um commit anterior. O Git reset
afeta todos os arquivos em todas as pastas de branch.
O Git reset
tem algumas opções. A opção padrão é reverter o branch para um commit anterior, mas manter todas as alterações subsequentes como alterações não confirmadas. Outra opção é reverter um branch para um commit anterior descartando todas as alterações em todos os arquivos de branch desde esse commit.
Aviso
Não redefina um branch para um commit antes do último commit se o último commit tiver sido enviado por push e compartilhado com outras pessoas. Isso fará com que o histórico do branch local não corresponda mais ao histórico de branch remoto. Para branches compartilhados, consulte Desfazer as alterações feitas por um commit compartilhado.
- Visual Studio 2022
- Visual Studio 2019 - Menu Git
- Visual Studio 2019 - Team Explorer
- Linha de comando Git
Na barra de menus, escolha Git > Exibir Histórico do Branch para abrir a guia Histórico do branch atual.
Na guia Histórico do branch atual, clique com o botão direito do mouse no commit que você deseja redefinir e escolha Redefinir > Excluir Alterações (--difícil) para redefinir o branch para o commit selecionado e excluir todas as alterações em todos os arquivos de branch desde esse commit. Ou escolha Redefinir > Manter Alterações (--misto) para redefinir o branch para o commit selecionado e manter todas as alterações subsequentes como alterações não preparadas.
Desfazer as alterações feitas por um commit compartilhado
Você pode desfazer as alterações feitas por um commit usando o Git reverter para criar um novo commit que reverta essas alterações. O Git revert
não exclui o commit original. Essa abordagem é adequada para desfazer as alterações feitas por um commit compartilhado porque o Git revert
não alterará o histórico de commit anterior e, portanto, os históricos de branch local e remoto continuam a corresponder.
- Visual Studio 2022
- Visual Studio 2019 - Menu Git
- Visual Studio 2019 - Team Explorer
- Linha de comando Git
Na barra de menus, escolha Git > Exibir Histórico do Branch para abrir a guia Histórico do branch atual.
Na guia Histórico do branch atual, clique com o botão direito do mouse no commit que você deseja reverter e escolha Reverter para criar um novo commit que desfaça as alterações feitas pelo commit selecionado.