diff --git a/01_initiation/04_ligne de commande_complet.md b/01_initiation/04_ligne de commande_complet.md index 1fabc17e0978509b7e77a04d53e6b1c00b0483a6..653415f38ae05772bf9236f9cdfc77181d3deebf 100644 --- a/01_initiation/04_ligne de commande_complet.md +++ b/01_initiation/04_ligne de commande_complet.md @@ -270,13 +270,38 @@ git diff ---vertical--- -Si l'on souhaite supprimer **toutes** les modifications non commitées +Pour annuler les modifications non commitées et indexées. ```bash git reset -- mon_fichier.txt ``` + ---vertical--- + +Pour annuler les modifications non commitées et non indexées (retrouver le fichier de l'index ou d'un autre commit). + +```bash +git checkout -- mon_fichier.txt +# ou +git restore mon_fichier.txt +``` + +Note: +- [Reset, restore and revert](https://git-scm.com/docs/git#_reset_restore_and_revert) +- pour `checkout` : https://git-scm.com/book/fr/v2/Les-bases-de-Git-Annuler-des-actions#_r%C3%A9initialiser_un_fichier_modifi%C3%A9 +- pour `restore` : https://git-scm.com/book/fr/v2/Les-bases-de-Git-Annuler-des-actions#undoing_git_restore + ---vertical--- + +Pour désindexer un fichier modifié et indexé. + +```bash +git restore --staged mon_fichier.txt +``` + +Note: +Désindexer (*unstage*) c'est passer de l'indexe (*Staging area*) ([diapo 3](https://git-gitlab-paca.pages.mia.inra.fr/support-de-formation/01_initiation/#/3)) au dossier de travail (*Working directory*), soit l'inverse de `git add`. Il n'y a pas encore eu de commit. + ---vertical--- # Grouper un commit avec un commit précédent