Aos 4 minutos da aula04 atividade 02 "https://cursos.alura.com.br/course/git-github-compartilhando-colaborando-projetos/task/139319" Achei estrando ter que colocar o ID do commit anterior para que ele apague o proximo, é isso mesmo ?
Aos 4 minutos da aula04 atividade 02 "https://cursos.alura.com.br/course/git-github-compartilhando-colaborando-projetos/task/139319" Achei estrando ter que colocar o ID do commit anterior para que ele apague o proximo, é isso mesmo ?
Oi, Rafael! Tudo bem?
Para excluir um commit no Git, precisamos especificar o ID do commit anterior ao que desejamos apagar, o que acontece porque o Git trabalha com uma estrutura de histórico linear, em que cada commit é baseado no commit anterior. Ao excluir um commit, estamos removendo toda a sequência de commits que vieram depois dele.
Vamos supor que fizemos três commits: A -> B -> C. Se quisermos excluir o commit B, precisamos especificar o ID do commit A para que o Git saiba qual commit deve ser removido.
No contexto do curso, o comando utilizado para excluir um commit é o git reset --hard
, seguido do ID do commit anterior. Por exemplo:
git reset --hard a3322db2eb6f82162977169f5461fc93b81bfac1
Esse comando irá apagar o commit em questão, bem como todas as alterações feitas nele. É importante ressaltar que, ao utilizar o --hard
, todas as alterações serão perdidas permanentemente.
Espero ter ajudado! Caso tenha ficado alguma dúvida, sinta-se à vontade em comunicar, estou à disposição!
Um forte abraço e bons estudos!
Boa noite, ainda sobre esse assunto... Então sempre devemos apagar o commit com o ID anterior, mesmo que esse ID não tenha nada a ver com o novo commit que criamos? Por exemplo: Criei um commit para "apagar o parágrafo", depois criei um outro para "alterar o número limite do jogo". Se eu quiser resetar o commit de "alterar o número secreto", tenho que usar o ID do "apagar o parágrafo"? Mesmo sabendo que os dois são duas funções diferentes? Grato!