From 9e2db29f332215e86b4fb99f7ea280a1fb8f334d Mon Sep 17 00:00:00 2001
From: Philippe Dosch <Philippe.Dosch@loria.fr>
Date: Wed, 6 Nov 2013 23:49:07 +0100
Subject: [PATCH] Add 4 more strategies about branches merging/rebasing

---
 git.tex | 81 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 81 insertions(+)

diff --git a/git.tex b/git.tex
index 2820f89..99ecd63 100644
--- a/git.tex
+++ b/git.tex
@@ -1565,6 +1565,87 @@
 
 %======================================================================
 
+\branchstrategie{Stratégie 2}
+{
+  \ex{git checkout master}\\
+  \ex{git merge nouvfonc}\\
+  \ex{git delete branch nouvfonc}
+}
+{strat2.png}
+{
+  \begin{itemize}
+  \item
+    Le commit du changement de titre paraît à part, ce qui n'est pas
+    encore trop gênant
+  \item
+    On a l'impression que les premiers commits sont sur la même lancée
+    que la branche de nouvelle fonctionnalité, ce qui induit en erreur
+    : ce n'est pas clair
+  \end{itemize}
+}
+
+%======================================================================
+
+\branchstrategie{Stratégie 3}
+{
+  \ex{git checkout nouvfonc}\\
+  \ex{git rebase master}\\
+  \ex{git checkout master}\\
+  \ex{git merge nouvfonc}\\
+  \ex{git delete branch nouvfonc}
+}
+{strat3.png}
+{
+  \begin{itemize}
+  \item
+    Tout est linéaire, le commit de la branche dont on est parti étant
+    en dernier
+  \item
+    On ne voit pas bien les commits correspondant à la nouvelle
+    fonctionnalité (idem stratégie 1 donc)
+  \end{itemize}
+}
+
+%======================================================================
+
+\branchstrategie{Stratégie 4}
+{
+  \ex{git checkout nouvfonc}\\
+  \ex{git rebase master}\\
+  \ex{git checkout master}\\
+  \ex{git merge -{}-no-ff nouvfonc}\\
+  \ex{git delete branch nouvfonc}
+}
+{strat4.png}
+{
+  \begin{itemize}
+  \item
+    Les deux commits correspondant à la nouvelle fonctionnalité
+    apparaissent clairement.
+  \item
+    C'est le schéma le plus lisible.
+  \end{itemize}
+}
+
+%======================================================================
+
+\branchstrategie{Stratégie 5}
+{
+  \ex{git checkout master}\\
+  \ex{git merge nouvfonc -{}-no-ff}\\
+  \ex{git delete branch nouvfonc}
+}
+{strat5.png}
+{
+  \begin{itemize}
+  \item
+    Idem à la stratégie 2, ce n'est pas le ff qui s'est fait dans ce
+    cas.
+  \end{itemize}
+}
+
+%======================================================================
+
 % \frame{\frametitle{Stratégie 1}
 %   \begin{tabular}{lp{3cm}}
 %     \begin{minipage}[b]{.5\linewidth}
-- 
GitLab