Como faço para reverter para um compromisso anterior em Git?

Como faço para reverter para um compromisso anterior em Git?
O comando "Git Revert" executa uma operação incrivelmente útil no ambiente Git. Às vezes, você deseja desfazer as mudanças que você cometeu sem realmente remover essas alterações do "log git" para que você sempre possa refazê -las no futuro sempre que quiser. O comando "git revert" exatamente permite que você faça isso. Isso significa que você pode facilmente anular ou cancelar o efeito de qualquer compromisso anterior sem realmente removê -lo do seu histórico de git. Portanto, este artigo destina -se a ensinar o método de reverter para um compromisso anterior em Git no Ubuntu 20.04.

Método de reverter para um compromisso anterior em Git no Ubuntu 20.04:

Por explicar a você o método de reverter para um compromisso anterior em Git no Ubuntu 20.04, projetamos um cenário de exemplo. Nesse cenário, primeiro modificaremos um arquivo já existente chamado ABC.TXT. Além disso, temos outros dois arquivos em nosso repositório de projeto de teste chamado Stash1.TXT e STASH2.txt que não tivemos cometido anteriormente. Então, estaremos cometendo todas essas mudanças de uma só vez. Então vamos tentar reverter para um estado anterior i.e. um estado em que nem os arquivos estoques1.TXT e STASH2.txt existia nem o arquivo ABC.txt foi modificado. Para elaborar ainda mais esse cenário, gostaríamos de orientá -lo pelas seguintes etapas:

Etapa nº 1: mude para o seu diretório de projeto Git:

Primeiro, iremos ao diretório em que nosso repositório de projeto Git reside da maneira mostrada abaixo:

CD/Home/Kbuzdar/Simplegit-Progit

Depois que este comando será executado, ele alterará o caminho padrão do seu terminal, como mostrado na imagem a seguir:

Etapa 2: Liste o conteúdo do seu diretório de projeto Git:

Agora vamos listar o conteúdo do nosso repositório de projeto de teste para ver quais arquivos já estão lá. O conteúdo do nosso repositório do projeto Git pode ser listado usando o comando declarado abaixo:

ls

O conteúdo do nosso repositório do projeto Git é mostrado na imagem a seguir:

Etapa 3: Abra e modifique qualquer arquivo no seu diretório de projeto Git:

Nós escolhemos o arquivo ABC.TXT do nosso repositório de projeto Git para modificação. Agora vamos abrir este arquivo com o editor Nano da maneira mostrada abaixo:

sudo nano abc.TXT

Este arquivo tem algum texto aleatório escrito, conforme mostrado na imagem a seguir:

Vamos modificar este texto adicionando um "não" nele, como mostrado na imagem abaixo. Depois de fazer essa modificação, simplesmente sairemos do editor Nano enquanto salvamos nosso arquivo ABC.TXT.

Etapa # 4: Reinacionalmente o seu repositório de projeto Git:

Depois de fazer todas as mudanças desejadas, precisamos reinicializar nosso repositório de projeto Git com a ajuda do seguinte comando:

git init

Depois de executar este comando, o Git reinicializará ao exibir a mensagem mostrada na imagem abaixo no seu terminal:

Etapa 5: Adicione as alterações ao seu repositório de projeto Git:

Agora precisamos adicionar as alterações ao nosso repositório de projeto Git executando o seguinte comando:

git add.

A execução bem -sucedida deste comando não exibirá nada no nosso Ubuntu 20.04 Terminal.

Etapa 6: Compreenda as alterações recém -feitas no seu repositório de projeto Git:

Depois de adicionar as alterações ao nosso repositório de projeto Git, cometeremos essas alterações com o seguinte comando:

Git Commit -M “Mensagem a ser exibida”

Aqui, você pode alterar "mensagem a ser exibida" com a mensagem real que deseja ser exibida enquanto este comando é executado.

Quando este comando será executado, você notará que nossos dois arquivos que não foram confirmados anteriormente eu.e. Stash1.TXT e STASH2.txt será comprometido.

Etapa 7: Verifique o histórico do Commit Git:

Agora vamos verificar o histórico do Git Commit para ver se nosso último compromisso foi registrado ou não. O histórico de commit Git pode ser verificado com o seguinte comando:

git log --tty = oneline

Você pode ver facilmente no histórico de commit Git mostrado na imagem abaixo que a cabeça está apontando para o nosso último compromisso eu.e. a transação em que cometemos os arquivos Scah1.txt, Stash2.txt e ABC.txt (após modificação). Além disso, observaremos o ID da transação desse compromisso do histórico de compromissos, para que possamos revertê -lo na próxima etapa enquanto usa esse id.

Etapa 8: execute a operação "Git revert":

Os cinco primeiros caracteres do ID da transação de nossa última transação são 220ac. Esses personagens serão usados ​​para se referir a este compromisso. Agora vamos reverter esse compromisso com a ajuda do seguinte comando:

Git reverte 220ac

Quando este comando será executado, ele exibirá uma mensagem no Nano Editor de que sua transação com o ID da transação 220AC será revertida como mostrado na imagem abaixo:

Você precisa pressionar Ctrl+ X depois de ver esta mensagem para poder ver o status exato no seu terminal, como mostrado na imagem a seguir. Este status nos dirá que as mudanças feitas anteriormente eu.e. A modificação do ABC.txt e a adição de Stash1.TXT e STASH2.txt foi revertido. Isso também significa que agora nosso arquivo ABC.txt estará de volta no estado anterior i.e. ele representará seu conteúdo original sem modificação. Além disso, os arquivos Scah1.TXT e STASH2.txt terá sido excluído.

Etapa 9: verifique o histórico do GIT Commit mais uma vez:

Agora vamos verificar nosso histórico de cometer git mais uma vez para ver a situação atual. Se a operação de reversão tiver sido realizada com sucesso, o chefe do nosso projeto estará apontando para esta transação de reversão, conforme destacado na imagem mostrada abaixo:

Etapa 10: Verifique se o comando "Git revert" funcionou com sucesso ou não:

No entanto, já vimos que nosso chefe de projeto está atualmente apontando para a transação de reversão, o que é suficiente para indicar que o comando "Git revert" funcionou corretamente. No entanto, ainda podemos garantir isso verificando o status do Git. Aqui, poderemos ver que não haverá mais arquivos para serem cometidos como os que estavam lá anteriormente eu.e. Stash1 e Stash2 já foram excluídos pela operação de reversão. Portanto, não haverá mais arquivos novos a serem cometidos, conforme mostrado na imagem a seguir:

Além disso, podemos tentar listar o conteúdo do nosso repositório de projeto Git para confirmar a exclusão dos arquivos Stash1.TXT e STASH2.txt como mostrado na imagem abaixo. Um ponto a ser observado aqui é que os arquivos Scah1.TXT e STASH2.O TXT foi excluído por nossa operação de reversão apenas porque antes de cometer a transação com o ID da transação de 220ac, não havia existência desses dois arquivos. É por isso que, como resultado de reverter esse compromisso, esses arquivos não existirão mais. No entanto, se você executar a operação de reverter mais uma vez nesta transação de revertência i.e. Você tentará anular o efeito da operação de reversão que acabou de executar, então poderá ver esses dois arquivos novamente.

Finalmente, também podemos verificar nosso arquivo ABC.txt mais uma vez para ver se está de volta com seu conteúdo original ou não. Simplesmente abriremos esse arquivo novamente com o editor Nano e você notará da imagem a seguir que a modificação que fizemos anteriormente neste arquivo foi revertida.

Conclusão:

Ao passar pelo cenário detalhado apresentado a você neste artigo, você espera usar o comando "git revert" no Ubuntu 20.04 de uma maneira muito eficaz. Este comando cancelará o efeito de qualquer transação anterior, mantendo sua entrada no "log git" para que, a qualquer momento, você possa voltar convenientemente para essa transação. Em outras palavras, podemos dizer que o comando "git revert" comete uma transação que é um inverso exato de um comando que foi cometido anteriormente (sem excluir o compromisso anterior). É exatamente por isso que consegue cancelar seu efeito.