Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

git restore

No curso, são apresentados 3 comandos para desfazer uma ação:

'git checkout -- arquivo' quando ainda não feito o 'git add'

'git reset HEAD arquivo' depois de 'git add'

'git revert {hash}' depois do 'git commit'

Porém, quando ocorrem as duas primeiras situações, no git bash é recomendado o comando 'git restore'.

Qual a diferença? Quando utilizar cada um?

1 resposta
solução!

Olá Matheus, tudo bem? Como você mesmo mencionou, o git checkout -- arquivo deve usar quando o arquivo ainda não foi adicionado no versionamento ou então quando as mudanças feitas no mesmo ainda não foram adicionadas. Já o comando git reset HEAD arquivo usamos quando já inserimos o arquivo usando o git add ou seja incluímos esse arquivo para entrar no próximo commit. O git revert usamos quando já confirmamos as alterações ou seja quando já criamos um novo commit, então usarmos o git revert que vai criar um novo commit apenas para remover as modificações feitas pelo anterior. Já o git restore restaura os arquivos da árvore de trabalho, então podemos usá-lo quando por algum motivo, não precisamos das novas alterações, por exemplo, fizemos 2 commit no projeto, porém agora o gerente de projeto falou que a funcionalidade mudou e não precisamos do que foi feito nesse dois commit, então podemos restaurar o nosso ambiente de trabalho, tudo dentro dele para um commit anterior descartando esses dois que não são mais necessários.

Espero ter esclarecido sua dúvida!