Lavorando con Git, è inevitabile imbattersi in errori o situazioni inaspettate: file eliminati accidentalmente, commit sbagliati, conflitti di merge o modifiche da annullare.
Fortunatamente, Git fornisce strumenti potenti per gestire queste situazioni e ripristinare uno stato coerente del repository.
Git offre diversi comandi per “tornare indietro”, ma è importante comprendere le differenze tra i comandi.
Per ripristinare file nella Working Directory o nello Staging Area, utilizziamo il seguente comando
git restore nomefile.txt # Per ripristinare un file nella Working Directory
git restore --staged nomefile.txt # Per ripristinare un file nella Staging Area
Veniva usato in precedenza per ripristinare i file e cambiare branch, ora viene sconsigliato per la gestione dei file.
git checkout HEAD
Per modificare lo stato del branch e/o dello Staging Area usiamo questo comando
git reset
--soft , conserva le modifiche ma sposta il puntatore HEAD--mixed (default), rimuove i file dallo staging area, ma non dalla Working Directory--hard (WARNING), annulla completamente le modifiche (working directory e staging)Se hai cancellato un file e non hai ancora effettuato il commit, puoi usare il comando :