Sobes.tech
Junior — Middle

Pode explicar o que faz o comando Git reset e em que cenários é utilizado?

sobes.tech IA

Resposta da IA

O comando git reset é usado para desfazer alterações e mover o ponteiro do branch atual (HEAD) para outro commit. Pode alterar o estado do índice (área de staging) e do diretório de trabalho, dependendo dos parâmetros.

Principais opções:

  • git reset --soft <commit> — move o HEAD para o commit especificado, deixando as alterações no índice e no diretório de trabalho. Usado para desfazer commits, mantendo as alterações para um novo commit.

  • git reset --mixed <commit> (padrão) — move o HEAD e redefine o índice, mas as alterações permanecem no diretório de trabalho. Permite desfazer commits e remover alterações do índice.

  • git reset --hard <commit> — move o HEAD, redefine o índice e o diretório de trabalho, apagando completamente todas as alterações após o commit especificado.

Cenários de uso:

  • Desfazer os últimos commits.
  • Remover alterações do índice.
  • Reverter completamente ao estado anterior.

Exemplo:

git reset --hard HEAD~1  # desfaz um commit e remove alterações