Mercurial > hg > mercurial-talk
view rebase-notes.tex @ 364:df4a5c5570e7 default tip
some personal tweaks
author | Jordi Gutiérrez Hermoso <jordigh@octave.org> |
---|---|
date | Wed, 19 Dec 2012 15:35:01 -0500 (2012-12-19) |
parents | 33add2a99379 |
children |
line wrap: on
line source
\documentclass[t,noamsthm,xcolor=dvipsnames]{beamer} \input{preambel} \title{Mercurial's Rebase Extension} \author{Martin Geisler \texorpdfstring{\\$\langle$\texttt{mg@aragost.com}$\rangle$} {<mg@aragost.com>}} \date{CCDC\\Cambridge, UK\\June 25th--27th, 2012} \begin{document} \begin{frame}[plain] \maketitle \begin{tikzpicture}[overlay, remember picture] \node[above right] at (current page.south west) {\includegraphics[height=3cm]{pixelman-front}}; \end{tikzpicture} \end{frame} \include{rebase} \tikzstyle{rev}+=[on chain, minimum size=6mm] \tikzset{node distance=10mm and 12mm, on grid} \begin{frame}{Rebase Details} Rebase uses \alert{repeated merges}: \smallskip \begin{tikzpicture}[start chain] \node[rev, join] {$A$}; \node[rev, join] {$B$}; \node[rev, join] {$C$}; \begin{scope}[start branch=pulled] \node[rev, join=by join-sw, on chain=going below right] {$X$}; \node[rev, join] {$Y$}; \node<2->[rev, join] {$D'$}; \node<3->[rev, join] {$E'$}; \end{scope} \node<1-3>[rev, join] {$D$}; \node<1-3>[rev, join] {$E$}; \node<4->[rev,join=by {black!30!white},opacity=0.3] {$D$}; \node<4->[rev,join=by {black!30!white},opacity=0.3] {$E$}; \draw<2-3>[red, ->] (chain-4) to[out=-35, in=145] (chain/pulled-4); \draw<3>[red, ->] (chain-5) to[out=0, in=145] (chain/pulled-5); \draw<4->[red!30!white, ->] (chain-4) to[out=-35, in=145] (chain/pulled-4); \draw<4->[red!30!white, ->] (chain-5) to[out=0, in=145] (chain/pulled-5); \end{tikzpicture} \onslide<5-> \begin{itemize} \item You handle smaller parts of the merge at a time \item Conflicts can differ from \cmd{hg merge} \item Can abort rebase by not deleting source branch \end{itemize} \end{frame} \begin{frame}{Consequences of Rebase} Good: \begin{itemize} \item Creates an easy-to-read linear history \item Less clutter by avoiding trivial merges \item Feature branch is not mixed with mainline changes \end{itemize} \pause Bad: \begin{itemize} \item Prevents collaboration \item Intermediate changesets might not have been tested \end{itemize} \end{frame} %\appendix %\newcounter{finalframe} %\setcounter{finalframe}{\value{framenumber}} %\setcounter{framenumber}{\value{finalframe}} \end{document} % LocalWords: changeset changesets