Può capitare di commettere degli errori nella fase di commit, per annullare un commit e scartare quello attuale possiamo utilizzare il comando git reset <identificativo_commit>:
PS C:\Users\gpace\Desktop\test_git> git reset 671dee8
Unstaged changes after reset:
M testUno.txt // O.o
Nella prima riga ho richiesto il ripristino dello stato dei commit all’identificativo 671dee8, utilizzando il comando git status infatti verranno mostrate le modifiche esattamente prima del secondo commit c1b1bab che da ora verrà ignorato.
PS C:\Users\gpace\Desktop\test_git> git status
On branch master
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git restore <file>..." to discard changes in working directory)
modified: testUno.txt
no changes added to commit (use "git add" and/or "git commit -a")
A conferma di ciò lo stato della staging area è compatibile alla situazione prima del commit c1b1bab.
In questa situazione è possibile continuare le modifiche o effettuare di nuovo l’aggiunta alla staging area e poi il commit
PS C:\Users\gpace\Desktop\test_git> git add .
PS C:\Users\gpace\Desktop\test_git> git commit -m "Terza modifica"
[master d483807] Terza modifica // O.o
1 file changed, 2 insertions(+), 1 deletion(-)
Il nuovo commit ovviamente avrà un nuovo identificativo, in questo caso d483807.