Come faccio a tornare a un precedente commit in git?

Come faccio a tornare a un precedente commit in git?
Il comando "Git Revert" esegue un'operazione incredibilmente utile all'interno dell'ambiente GIT. A volte, desideri annullare le modifiche che una volta hai commesso senza effettivamente rimuovere quei cambiamenti dal "registro git" in modo da poter sempre rifare in futuro ogni volta che vuoi. Il comando "Git Revert" ti consente esattamente di farlo. Significa che puoi facilmente annullare o annullare l'effetto di qualsiasi commit precedente senza effettivamente rimuoverlo dalla tua cronologia git. Pertanto, questo articolo ha lo scopo di insegnarti il ​​metodo di ripristino a un precedente commit in Git in Ubuntu 20.04.

Metodo di ripristino a un precedente commit in Git in Ubuntu 20.04:

Per spiegarti il ​​metodo di ripristino a un precedente commit in Git in Ubuntu 20.04, abbiamo progettato uno scenario di esempio. In questo scenario, modificheremo prima un file già esistente chiamato ABC.TXT. Inoltre, abbiamo altri due file nel repository del nostro progetto di test denominato Stash1.txt e stash2.txt che non ci eravamo impegnati in precedenza. Quindi, commetteremo tutti questi cambiamenti contemporaneamente. Quindi proveremo a tornare a uno stato precedente I.e. uno stato in cui né i file stash1.txt e stash2.txt esisteva né il file ABC.txt è stato modificato. Per elaborare ulteriormente questo scenario, vorremmo guidarti attraverso i seguenti passaggi:

Passaggio n. 1: passa alla directory del progetto GIT:

Innanzitutto, andremo alla directory in cui risiede il nostro repository di progetti GIT nel modo mostrato di seguito:

CD/Home/Kbuzdar/Simplegit-Progit

Una volta eseguito questo comando, cambierà il percorso predefinito del tuo terminale come mostrato nella seguente immagine:

Passaggio n. 2: elenca il contenuto della directory del progetto GIT:

Ora elencheremo il contenuto del nostro repository di project per vedere quali file sono già presenti. Il contenuto del nostro repository di progetto GIT può essere elencato usando il comando indicato di seguito:

ls

I contenuti del nostro repository di progetti GIT sono mostrati nella seguente immagine:

Passaggio n. 3: apri e modifica qualsiasi file all'interno della directory del progetto GIT:

Abbiamo scelto il file ABC.txt dal nostro repository di progetti git per la modifica. Ora apriremo questo file con l'Editor Nano nel modo mostrato di seguito:

Sudo Nano ABC.TXT

Questo file ha un testo casuale scritto in esso come mostrato nella seguente immagine:

Modificheremo questo testo aggiungendo un "non" in esso come mostrato nell'immagine seguente. Dopo aver apportato questa modifica, usciremo semplicemente dall'editor Nano mentre salviamo il nostro file ABC.TXT.

Passaggio n. 4: reinizializzare il repository del progetto GIT:

Dopo aver apportato tutte le modifiche desiderate, dobbiamo reinizializzare il nostro repository di progetti GIT con l'aiuto del seguente comando:

git init

Dopo aver eseguito questo comando, Git reinitializzerà durante la visualizzazione del messaggio mostrato nell'immagine seguente sul tuo terminale:

Passaggio n. 5: aggiungi le modifiche al repository del progetto GIT:

Ora dobbiamo aggiungere le modifiche al nostro repository di progetto GIT eseguendo il seguente comando:

git aggiungi.

L'esecuzione riuscita di questo comando non visualizzerà nulla sul nostro Ubuntu 20.04 Terminale.

Passaggio n. 6: commetti le modifiche appena apportate nel repository del progetto GIT:

Dopo aver aggiunto le modifiche al nostro repository di progetti GIT, commetteremo queste modifiche con il seguente comando:

git commit -m "messaggio da visualizzare"

Qui, puoi modificare il "messaggio da visualizzare" con il messaggio effettivo che si desidera essere visualizzato mentre questo comando esegue.

Quando questo comando verrà eseguito, noterai che i nostri due file che non erano stati impossibili in precedenza i.e. Stash1.txt e stash2.txt sarà impegnato.

Passaggio n. 7: controlla la cronologia del commit git:

Ora controlleremo la cronologia del commit GIT per vedere se il nostro ultimo commit è stato registrato o no. La cronologia del commit GIT può essere controllata con il seguente comando:

Git log --pretty = oneline

Puoi facilmente vedere dalla storia del commit git mostrata nell'immagine sottostante che la testa indica il nostro ultimo commit i.e. la transazione in cui abbiamo commesso i file stash1.txt, stash2.txt e ABC.txt (dopo la modifica). Inoltre, noteremo l'ID di transazione di questo commit dalla cronologia del commit in modo da poterlo ripristinare nel passaggio successivo, utilizzando questo ID.

Passaggio n. 8: eseguire l'operazione "Git Revert":

I primi cinque caratteri dell'ID transazione della nostra ultima transazione sono 220ac. Questi personaggi saranno usati per fare riferimento a questo commit. Ora ripristineremo questo commit con l'aiuto del seguente comando:

Git Ripristina 220AC

Quando questo comando verrà eseguito, visualizzerà un messaggio all'interno di Nano Editor che la transazione con l'ID di transazione 220AC verrà ripristinata come mostrato nell'immagine seguente:

È necessario premere Ctrl+ X dopo aver visto questo messaggio in modo da poter vedere lo stato esatto sul tuo terminale come mostrato nella seguente immagine. Questo stato ci dirà che le modifiche apportate prima i.e. la modifica di ABC.txt e l'aggiunta di stash1.txt e stash2.txt è stato ripristinato. Significa anche che ora il nostro file ABC.txt tornerà nello stato precedente i.e. rappresenterà il suo contenuto originale senza modifiche. Inoltre, i file stash1.txt e stash2.txt sarà stato eliminato.

Passaggio n. 9: controlla ancora una volta la cronologia del commit GIT:

Ora controlleremo ancora una volta la nostra cronologia di commit git per vedere la situazione attuale. Se l'operazione di ripristino è stata eseguita correttamente, la testa del nostro progetto punterà a questa transazione di ritorno come evidenziato nell'immagine mostrata di seguito:

Passaggio # 10: verificare se il comando "GIT Revert" ha funzionato correttamente o no:

Sebbene, abbiamo già visto che il nostro capo progetto sta attualmente indicando la transazione di ripristino che è sufficiente per indicare che il comando "git revert" ha funzionato correttamente. Tuttavia, possiamo ancora assicurarci controllando lo stato GIT. Qui, saremo in grado di vedere che non ci saranno più file da commettere come quelli che erano lì in precedenza io.e. Stash1 e Stash2 sono già stati eliminati dall'operazione di ripristino. Pertanto, non ci saranno più nuovi file da commettere come mostrato nella seguente immagine:

Inoltre, possiamo provare a elencare il contenuto del nostro repository di progetti GIT per confermare la cancellazione dei file Stash1.txt e stash2.txt come mostrato nell'immagine seguente. Un punto da notare qui è che i file stash1.txt e stash2.txt è stato eliminato dalla nostra operazione di ripristino esclusivamente perché prima di commettere la transazione con l'ID transazione di 220ac, non esisteva alcuna esistenza di questi due file. Ecco perché, a seguito del ripristino di questo commit, questi file non esiste più. Tuttavia, se eseguirai nuovamente l'operazione di ripristino su questa transazione di ritorno i.e. Proverai a annullare l'effetto dell'operazione di ripristino che hai appena eseguito, quindi sarai in grado di vedere di nuovo questi due file.

Infine, possiamo anche controllare il nostro file ABC.txt ancora una volta per vedere se è tornato con il suo contenuto originale o no. Apriremo semplicemente questo file con l'Editor Nano e noterai dalla seguente immagine che la modifica che abbiamo fatto in precedenza a questo file è stata ripristinata.

Conclusione:

Passando attraverso lo scenario dettagliato presentato in questo articolo, si spera che sarai in grado di utilizzare il comando "Git Revert" in Ubuntu 20.04 in modo molto efficace. Questo comando annullerà l'effetto di qualsiasi transazione precedente mantenendo la sua voce all'interno del "registro GIT" in modo che in qualsiasi momento puoi tornare comodamente a quella transazione. In altre parole, possiamo dire che il comando "GIT REVERT" commette una transazione che è un inverso esatto di un comando che è stato commesso in precedenza (senza eliminare il commit precedente). Questo è esattamente il motivo per cui riesce a annullare il suo effetto.