From 1586d5568fa1c3ef801d23f603ee7a569932aabc Mon Sep 17 00:00:00 2001
From: Philippe Dosch <Philippe.Dosch@loria.fr>
Date: Thu, 8 Nov 2018 18:36:49 +0100
Subject: [PATCH] =?UTF-8?q?Premi=C3=A8re=20=C3=A9bauche=20du=20remisage?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 gitrefcard.tex | 38 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 38 insertions(+)

diff --git a/gitrefcard.tex b/gitrefcard.tex
index bc0cd52..9eaafc4 100644
--- a/gitrefcard.tex
+++ b/gitrefcard.tex
@@ -307,6 +307,44 @@ distant\\
 \exindex{git checkout}
 %======================================================================
 
+%======================================================================
+\subsubsection{\ex{git stash}}
+\label{sec:gitstash}
+\exindex{git stash}
+%======================================================================
+
+Cela correspond au \emph{remisage} : la possibilité de remiser un
+travail non finalisé, sur lequel on ne souhaite pas faire de commit et
+qui est du coup une entrave pour une autre opération (un \ex{pull}, un
+changement de branche, etc.)
+\begin{itemize}
+\item 
+  Sous sa forme la plus simple, il suffit d'invoquer \ex{git stash},
+  ce qui sauve tout les modifications en attente dans une pile.
+\item
+  Après avoir effectué ce qu'on devait faire, un \ex{git stash apply}
+  permet de restaurer le dernier\footnote{Ne pas oublier que c'est une
+    pile de remisages} remisage fait.
+  Attention, le remisage reste dans la pile.
+  Pour le supprimer, il faut faire un \ex{git stash drop}.
+\item
+  Souvent, on souhaite à la fois appliquer le dernier remisage et à la
+  fois le supprimer de la pile.
+  Une commande permet de combiner le \ex{apply} et le \ex{drop} :
+  c'est \ex{git stash pop}.
+\item
+  La commande \ex{git stash list} permet d'afficher tous les remisages
+  présents dans la pile ; chacun est identifiable au moyen d'un
+  identifiant de la forme \ex{stash@\{\emph{x}\}}, où \ex{\emph{x}}
+  est un nombre (0 pour le dernier remisage, 1 pour
+  l'avant-dernier...)
+\item
+  Il est possible d'appliquer les commandes précédentes (\ex{apply,
+    drop}) avec un identifiant en paramètre.
+  Exemple : \ex{git stash apply stash@\{1\}} pour appliquer
+  l'avant-dernier remisage.
+\end{itemize}
+
 \printindex
 
 
-- 
GitLab