Accueil·Commandes du terminal

git stash

git

Syntaxe

git stash [push] [-u] [-m "<message>"]

Met de côté vos modifications en cours et rend l'arbre propre ; les fichiers non suivis restent sauf avec -u, et pop supprime l'entrée là où apply la conserve.

Options courantes

OptionSignification
-uinclude untracked files, which are otherwise left behind
-ainclude ignored files too
-kkeep the staging area as it is
-pstash selected hunks
popapply the newest entry and delete it
applyapply it and keep the entry
listshow the entries
drop <stash>delete one entry

Exemples

git stash -u -m "wip login"

parks tracked and untracked changes under a name

git stash pop

brings the newest stash back and removes it from the list

git stash apply stash@{2}

applies an older entry and leaves it in the list

Ce qui embrouille, c’est qu’annuler a plusieurs formes : déplacer là où pointe une branche n’est pas ajouter un commit qui l’inverse.

Comment lire

  • Les crochets [ ] marquent une partie facultative.
  • Les points de suspension … signifient qu’on peut en mettre plusieurs.
  • Les options sont sensibles à la casse : sur certaines commandes, -r et -R ne font pas la même chose.

Questions fréquentes

Q. Que fait git stash ?

Met de côté vos modifications en cours et rend l'arbre propre ; les fichiers non suivis restent sauf avec -u, et pop supprime l'entrée là où apply la conserve.

Q. Comment l’écrire ?

git stash [push] [-u] [-m "<message>"] — les crochets marquent ce qui est facultatif.

Q. Combien d’options valent la peine ?

Il y en a 8 ici ; la liste complète est dans man git. Cette commande relève de git.

Commandes liées

page man: man git-stash