Git stash permet de mettre de coté des fichiers en cours de modification et de les récupérer en l’état plus tard. Ce « stash » peut être réalisé plusieurs fois et on a donc une « pile » de stash ayant chacun un identifiant. Ca devient vite indispensable quand on a besoin de faire un rebase, un checkout ou un merge.

Récapitulatif des commandes à retenir pour git stash :

Mettre de coté les fichiers en cours de modification

git stash

Lister les stashs :

git stash list

Récupérer les derniers fichiers :

git stash apply

Récupérer les derniers fichiers et supprimer le stash :

git stash pop

Récupérer les fichiers d’un stash en particulier :

git stash apply stash@{0}

Supprimer un stash :

git stash drop stash@{0}

Voir les détails d’un stash :

git stash show stash@{0}

Créer une nouvelle branche à partir d’un stash :

git stash branch stash@{0}

Dans les exemples ci dessus, stash@{0}indique un stash précis de la pile (où 0 peut prendre d’autres valeurs numériques). Utiliser la commande git stash listpour visualiser ces identifiants.