Passo a passo: Como descartar mudanças em arquivos não commitados no Git

O Git permite descartar mudanças em arquivos não commitados usando diferentes comandos, dependendo da necessidade.

Como descartar mudanças em arquivos não commitados?

No Git, há momentos em que você pode querer desfazer mudanças antes de commitá-las. Existem diferentes comandos para descartar essas alterações, dependendo se os arquivos já foram adicionados ao stage ou ainda estão no working directory.

1. Descartar mudanças em arquivos modificados (não adicionados ao stage)

Se você fez alterações em um arquivo, mas ainda não as adicionou ao stage (git add), pode desfazê-las com:

git checkout -- arquivo.txt

Esse comando retorna o arquivo ao estado da última versão commitada. Caso queira desfazer mudanças em todos os arquivos modificados, use:

git checkout -- .

⚠️ Atenção: Esse comando não pode ser revertido, então use com cuidado.

2. Descartar mudanças em arquivos que já foram adicionados ao stage

Se você já usou git add para adicionar os arquivos ao stage, mas ainda não realizou o commit, pode remover essas mudanças do stage sem perder o conteúdo editado com:

git reset arquivo.txt

Isso remove o arquivo do stage, mas mantém as alterações feitas.

Para remover todos os arquivos do stage:

git reset

Agora, para descartar completamente as mudanças (tanto do stage quanto do working directory), utilize:

git checkout -- arquivo.txt

3. Usando git restore (versões mais recentes do Git)

A partir das versões mais novas do Git, git restore substituiu git checkout para desfazer mudanças em arquivos não commitados. Para usá-lo:

git restore arquivo.txt

Ou, para restaurar todas as alterações não commitadas:

git restore .

Saber como descartar mudanças não commitadas no Git é uma habilidade essencial para qualquer desenvolvedor. Muitas vezes, fazemos alterações no código que não queremos manter, e reverter essas mudanças de forma correta evita problemas futuros.

É importante sempre verificar quais arquivos foram modificados antes de descartar alterações. O comando git status ajuda a visualizar se os arquivos estão apenas modificados ou se já foram adicionados ao stage. Além disso, se estiver inseguro sobre descartar mudanças, criar um backup do arquivo antes pode ser uma boa prática. Para evitar problemas, recomenda-se não usar comandos destrutivos como git reset --hard sem ter certeza das consequências.

Algumas aplicações:

  • Reverter alterações indesejadas sem afetar o histórico do Git
  • Corrigir erros rapidamente sem precisar de commits desnecessários
  • Evitar que mudanças temporárias sejam adicionadas ao repositório
  • Manter um código mais limpo e organizado
  • Facilitar a revisão e controle de versões no desenvolvimento

Dicas para quem está começando

  • Antes de descartar mudanças, use 'git status' para verificar o estado dos arquivos.
  • Se não tiver certeza, faça um backup do arquivo antes de restaurá-lo.
  • Use 'git restore' para versões mais recentes do Git em vez de 'git checkout'.
  • Se já adicionou o arquivo ao stage, use 'git reset' antes de restaurá-lo.
  • Evite o uso de 'git reset --hard' sem ter certeza, pois ele pode apagar alterações permanentemente.

Contribuições de Tatiane Freitas

Compartilhe este tutorial: Como descartar mudanças em arquivos não commitados

Compartilhe este tutorial

Continue aprendendo:

Como desfazer o último commit no Git

No Git, é possível desfazer o último commit usando os comandos reset ou revert, dependendo da necessidade.

Tutorial anterior

Como modificar a mensagem do último commit

No Git, é possível modificar a mensagem do último commit usando o comando 'git commit --amend', sem criar um novo commit.

Próximo tutorial