13. Descartando mudanças no stage (antes do commit)
Metas
- Aprender como desfazer mudanças que já estão no stage.
01 Edite o arquivo e adicione as mudanças ao stage
Faça mudanças ao arquivo hello.html
na forma de um comentário indesejado.
Arquivo: hello.html
<html>
<head>
<!-- This is an unwanted but staged comment -->
</head>
<body>
<h1>Hello, World!</h1>
</body>
</html>
Adicione o arquivo modificado ao stage.
Execute
git add hello.html
02 Verifique o status
Verifique o status da mudança indesejada.
Execute
git status
Resultado
$ git status
On branch main
Changes to be committed:
(use "git restore --staged <file>..." to unstage)
modified: hello.html
O status mostra que a mudança está no stage e pronta para um commit;
03 Revertendo a área de preparação
O comando reset
retorna a área de preparação para HEAD
. Isso limpa a área de preparação das mudanças que nós acabamos de adicionar ao stage.
Execute
git reset HEAD hello.html
Resultado
$ git reset HEAD hello.html
Unstaged changes after reset:
M hello.html
O comando reset
(padrão) não altera o diretório de trabalho. Logo, o diretório de trabalho ainda tem os comentários indesejados. Nós podemos usar o comando checkout
do tutorial anterior para remover as mudanças do repositório de trabalho.
04 Mudando para a versão do commit
Execute
git checkout hello.html
git status
Resultado
$ git checkout hello.html
Updated 1 path from the index
$ git status
On branch main
nothing to commit, working tree clean
Nosso diretório de trabalho está limpo novamente.