author avatar
    Gerente de Produto sênior
Última atualização por Gabriel Souza em 10 de agosto de 2026

Resumo
Domine o Git: entenda de vez as diferenças entre `git restore`, `checkout`, `reset` e `revert` e saiba exatamente qual comando usar para salvar seu código sem perder dados.



git restore, checkout, reset e revert
Poucas coisas são mais estressantes do que perceber de repente que você perdeu trabalho no Git. Talvez um reset --hard tenha apagado seu diretório de trabalho, ou você acidentalmente sobrescreveu edições importantes com checkout. A comparação entre git restore, checkout, reset e revert só aumenta a confusão: todos os quatro podem “desfazer” algo, mas usar o comando errado pode fazer você perder horas de trabalho para sempre. Se você já ficou olhando para o terminal, sem saber qual comando realmente trará de volta seu arquivo deletado sem danificar o histórico do repositório, este guia é para você. Aqui, você aprenderá o que cada comando realmente faz — para que possa recuperar com confiança.

Comparação lado a lado: git restore, checkout, reset e revert

Esta tabela resume o escopo de cada comando, se ele reescreve o histórico de commits, seu nível de risco e seu melhor caso de uso. Consulte-a antes de executar qualquer comando de desfazer.
ComandoEscopo (Árvore de Trabalho / Índice / HEAD)Histórico reescrito?Nível de RiscoMelhor Caso de Uso

git restore (TortoiseGit: Reverter alterações ou Remover arquivos do stage)

Árvore de trabalho, índice

Não

Baixo

Descartar edições não preparadas com segurança ou remover arquivos do stage

git checkout (nível de arquivo) (TortoiseGit: Reverter para esta revisão ou Trocar/Checkout)

Árvore de trabalho

Não

Baixo

Maneira legada de restaurar um arquivo de um commit; restore é mais seguro e claro

git reset (TortoiseGit: Reset)

Índice, HEAD (com opções)

Sim (pode reescrever o histórico local)

Alto se --hard

Desfazer commits locais; opcionalmente manter/descartar alterações

git revert (TortoiseGit: Reverter alterações deste commit)

HEAD (cria novo commit)

Não (preserva o histórico)

Baixo em branches compartilhadas

Desfazer um commit enviado adicionando um commit de cancelamento

Nota: git restore foi introduzido para separar a restauração de arquivos do git checkout, que também troca de branches. Embora git checkout -- {file} ainda funcione, restore é mais seguro e claro—especialmente para iniciantes.
Se você usar um comando que reescreve o histórico (como git reset), os commits antigos se tornam inacessíveis e podem ser coletados pelo garbage collector. Em branches compartilhadas, isso pode causar divergências sérias. Para commits já enviados, sempre use git revert.

Se o comando errado excluiu seus arquivos, use o Renee Undeleter como plano de recuperação

Às vezes, um comando Git destrutivo apaga arquivos que o Git não consegue recuperar — como quando git reset --hard deleta arquivos não commitados. Nesses casos, uma ferramenta de recuperação de dados dedicada é sua melhor (e às vezes única) chance.
Renee Undeleter é um software profissional de recuperação de dados para Windows, cartões de memória e discos externos. Ele foi desenvolvido para recuperar arquivos perdidos por exclusão acidental, formatação de disco ou falhas do sistema operacional — as mesmas situações que podem ocorrer quando um comando Git elimina arquivos que nunca foram rastreados.
O software oferece quatro módulos principais de escaneamento:
- Scan de Partição Rápido: Recupera rapidamente arquivos excluídos recentemente escaneando os primeiros 30 GB de uma partição.
- Scan de Partição Completo: Recupera arquivos de partições formatadas, corrompidas ou inacessíveis, usando escaneamento por assinatura para mais de 400 tipos de arquivo.
- Scan de Disco Completo: Reconstrói informações de partição e escaneia cada setor — ideal para discos severamente danificados.
selecione scan de disco completo para escanear o disco no Renee Undeleter
- Criação de Imagem : Faz um backup byte a byte de uma partição, permitindo que você tente a recuperação com segurança sem arriscar danos adicionais.
Renee Undeleter, selecione Scan de Partição Rápido
Os principais benefícios incluem suporte a múltiplos sistemas de arquivos (NTFS, FAT, exFAT, APFS, ext4) e sistemas operacionais (macOS, Linux), uma funcionalidade de visualização para verificar arquivos antes da recuperação e uma interface projetada tanto para iniciantes quanto para usuários avançados.
visualização antes da recuperação
visualizar arquivo no Renee Undeleter
Pros:
  • Quatro modos de escaneamento distintos para diferentes tipos de perda
  • Reconhece mais de 400 formatos de arquivo por escaneamento de assinatura
  • Suporte a múltiplos sistemas de arquivos (NTFS, FAT, exFAT, APFS, ext4) e sistemas operacionais (macOS, Linux)
  • Visualização de arquivo integrada antes da recuperação
  • Criação de Imagem faz backup de um disco danificado primeiro

Cons:

  • Não deve ser instalado no mesmo disco do qual você deseja recuperar dados
  • Discos conectados via USB escaneiam mais lentamente devido à latência
  • O escaneamento profundo pode ser demorado para partições grandes
  • Imagens de backup precisam de uma partição livre de tamanho igual
  • Recuperação não garantida para dados severamente sobrescritos

Recupere arquivos Git perdidos de discos corrompidos com o Renee UndeleterRenee Undeleter software

Poderosa função de recuperação possa recuperar dados ainda que existam muitos setores defeituosos em dispositivos.

Suporta muitos dispositivos cartões SD, SDHC, SDXC, pendrives, discos rígidos, computadores, etc.

Pode recuperar muitos tipos de arquivos imagens, vídeos, áudios, arquivos, emails, etc.

Operações fáceis recupera arquivos com 3 passos, e suporta pré

Modos diversos de recuperação recuperação de arquivo / formatação / partição.

Poderosa função de recuperação possa recuperar dados dos setores defeituosos

Suporta muitos dispositivos cartões SD, pendrives, discos rígidos, computadores, etc.

Operações fáceis recupera arquivos com 3 passos.

Importante: Se comandos Git excluíram arquivos que nunca foram commitados, pare de usar o disco afetado imediatamente e instale o Renee Undeleter em outro disco para evitar sobrescrever dados recuperáveis.

Qual comando usar? Exemplos práticos por situação

O comando Git certo depende do estado atual do seu repositório. Abaixo estão exemplos claros e reais para ajudá-lo a escolher a opção mais segura — sem arriscar seu trabalho ou reescrever o histórico compartilhado.

1. Descartar edições não preparadas na árvore de trabalho

Você modificou um arquivo, mas deseja descartar essas alterações. Apenas a árvore de trabalho é afetada; seu histórico de commits permanece intacto.

git restore {file}

Use git restore . Este comando substitui com segurança sua cópia de trabalho pela versão do índice (ou do HEAD se o arquivo não estiver no stage).

2. Remover arquivo da área de stage mas manter as edições

Você acidentalmente adicionou um arquivo ao stage com git add e deseja movê-lo de volta para a árvore de trabalho mantendo suas alterações. Use git restore --staged .

git restore –staged {file}

Suas edições permanecem intactas; apenas o índice é atualizado.

3. Desfazer o último commit local mas manter as alterações

Você fez commit antes da hora e ainda não enviou. Para desfazer o commit mantendo suas alterações no stage, use git reset --soft HEAD~1.

git reset –soft HEAD~1

A flag --soft move o HEAD um commit para trás, mas mantém sua árvore de trabalho e índice inalterados, de modo que tudo fica pronto para um novo commit.
Cuidado: Evite git reset --hard HEAD~1 a menos que tenha certeza absoluta de que deseja excluir permanentemente todas as alterações não commitadas. A opção --hard apaga tanto as edições no stage quanto na árvore de trabalho, sem possibilidade de recuperação pelo Git.

4. Desfazer um commit que já foi enviado

Para commits que já estão em uma branch remota, nunca reescreva o histórico. Em vez disso, crie um novo commit que reverta as alterações com git revert .

git revert

Isso é seguro para branches compartilhadas — preserva o histórico do projeto e não requer um force push.

5. Restaurar um arquivo rastreado deletado

Você excluiu um arquivo rastreado e deseja recuperá-lo do último commit com git restore --source=HEAD .

git restore –source=HEAD –staged –worktree {file}

--source=HEAD recupera o arquivo do commit mais recente, --staged atualiza o índice e --worktree restaura a cópia de trabalho. O equivalente legado é: git checkout HEAD --

git checkout HEAD — {file}

Ambos os comandos recuperam um arquivo rastreado que ainda existe no histórico. Se o arquivo nunca foi commitado, o Git não pode recuperá-lo — use uma ferramenta de Scan de Partição Rápido em vez disso.

Perguntas Frequentes

Posso desfazer um git reset --hard depois de executá-lo?

Às vezes, sim — se você agir rapidamente. O reflog do Git registra por onde o HEAD passou. Execute git reflog, encontre o hash do commit anterior ao reset e use git reset --hard [ hash ] para voltar. Isso restaura apenas alterações que foram commitadas. Arquivos não commitados deletados por --hard estão perdidos do ponto de vista do Git e exigem software de Scan de Partição Rápido.

É seguro usar git restore em uma branch remota compartilhada?

Sim. git restore apenas altera sua árvore de trabalho local ou índice; nunca reescreve o histórico de commits nem afeta a branch remota. É seguro de usar, mas lembre-se de que qualquer edição local descartada não poderá ser recuperada.

Qual é a diferença entre git reset e git revert em termos simples?

git reset move o ponteiro da branch atual para trás, apagando efetivamente os commits da linha do tempo (embora eles permaneçam no reflog até serem coletados pelo garbage collector). Ele reescreve o histórico. git revert cria um novo commit que desfaz as alterações de um commit anterior — mantendo o histórico intacto. Para trabalho compartilhado, sempre use git revert.
Recomendação Renee Undeleter - Software poderoso e simples de recuperação de dados Renee Undeleter software

Suporta recuperação de vários cartão SD suporta recuperação de dados de cartão SD, de cartão SDHC e de cartão SDXC.

Pode recuperar muitos tipos de arquivos imagens, vídeos, áudios, arquivos compactados, etc.

Operações fáceis Os iniciantes também podem operar rapidamente.

Suporta multi dispositivos Além de suporta cartão SD, ainda suporta pendrive, Windows, Mac e outros dispositivos.

Compatibilidade suporta sistema operacional de Windows e Mac.

Poderosa função de recuperação possa recuperar dados de diversos dispositivos

Suporta multi dispositivos cartões SD, pendrives, discos rígidos, computadores, etc.

Operações fáceis Os iniciantes também podem operar rapidamente.

Baixar GrátisBaixar GrátisBaixar Grátis 23564 pessoas baixaram!

Comentários dos usuários

Page 1

Deixe um comentário


Seu comentário foi enviado e está aguardando moderação.