From 759bced29426227de2fbb403eface9faa28a965a Mon Sep 17 00:00:00 2001 From: Philippe Dosch <Philippe.Dosch@loria.fr> Date: Wed, 15 Jan 2014 18:04:15 +0100 Subject: [PATCH] Starts explanations about rebase command (and with respect with the merge command) --- branchmerge.tex | 53 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) diff --git a/branchmerge.tex b/branchmerge.tex index d51ac8d..6f4f0c4 100644 --- a/branchmerge.tex +++ b/branchmerge.tex @@ -124,8 +124,61 @@ Au lieu d'effectuer une fusion au moyen de la commande \ex{merge}, il est possible d'obtenir un résultat similaire en réécrivant l'historique au moyen de la commande \ex{rebase} + \item + Un des usages fait de cette commande est de garder une nouvelle + branche synchronisée avec la branche dont elle est issue + \begin{itemize} + \item + la commande \ex{rebase} est alors appliqué régulièrement pour + que la nouvelle branche « profite » aussi des \emph{commits} + réalisés dans la branche de départ + \item + la fusion finale est généralement facilitée, la mise en + \oe{}uvre de cette synchronisation permettant de régler les + éventuels conflits au fur et à mesure + \end{itemize} + % L'insertion de figures telles que celles présentées pages 165-166 + % du bouquin O'Reilly doit permettre de mieux comprendre cet aspect \end{itemize} } %====================================================================== +\frame{\frametitle{Principe de fonctionnement} + \begin{itemize} + \item + La commande \ex{rebase} réécrit chacun des commits à considérer + pour qu'ils s'appliquent au contexte de la branche sur laquelle + ils sont portés + \item + Incidemment, la commande \ex{rebase} est souvent présentée comme + une commande de \emph{réécriture} + \item + + \end{itemize} +} + +%====================================================================== + +\frame{\frametitle{\texttt{rebase} \emph{vs} \texttt{merge}} + \begin{itemize} + \item + Le résultat obtenu avec un \ex{rebase} est relativement similaire + à celui obtenu avec un \ex{merge} : dans les deux cas, la branche + destination intègre tous les apports des \emph{commits} des deux + branches considérées + \item + On peut donc se demander s'il est préférable d'utiliser l'une ou + l'autre des commandes ou si certains environnements conditionnent + l'usage de l'une ou de l'autre des commandes + \item + Il faut bien comprendre que le processus de réécriture de + \ex{rebase} fait que tous les \emph{commits} initiaux sont + réécrits, et qu'ils changent donc de SHA-1 en particulier + \item + Pose des problèmes comme ceux de la page 172-173 -> synthétiser et + expliquer + \end{itemize} +} + +%====================================================================== -- GitLab