Commit 4215fc8a authored by Lukas Nagel's avatar Lukas Nagel
Browse files

add section on branches

parent 25e89bd8
......@@ -186,6 +186,7 @@
\cmd{git commit -m} \str{pep8} & \cmt{Änderungen commiten} \\
\end{commandline}
\end{Beispiel}
\center{} {\huge \alert{Grafik: Versionsgraph}}
\end{frame}
%
......@@ -251,8 +252,7 @@
\item Git speichert intern \code{objekt}e
\item Referenz auf objekte durch Hash des Zielobjekts
\end{itemize}
\center
{\huge UMLartig git objekt}
\center{} {\huge UMLartig git objekt}
\end{frame}
\subsection{Konsequenz}
......@@ -275,10 +275,106 @@
%
% Branches
%
\section{Branches}
\subsection{\secname: Kommandos}
\begin{frame}
\frametitle{\subsecname}
Neuen Branch erstellen
\begin{commandline}
\cmd{git branch <branchname>} & \\
\end{commandline}
~\\
Zum branch wechseln
\begin{commandline}
\cmd{git checkout -b <branchname>} & \\
\end{commandline}
~\\
Branches mergen
\begin{commandline}
\cmd{git merge <branchname>} & \\
\end{commandline}
\end{frame}
\section{Branches}
\subsection{\secname: Beispiel}
\begin{frame}
\frametitle{\subsecname}
\begin{Beispiel}
Der Algorithmus ist extrem langsam,\\
Alice probiert ihn durch Vorsortieren zu beschleunigen
\begin{commandline}
\cmd{git checkout -b} \str{performance} & \\
\cmd{vim} algo.py & \\
\cmd{git add} algo.py & \\
\cmd{git commit -m} \str{presort input} & \\
\end{commandline}
\center{} {\huge \alert{Grafik: Angepasster Versionsgraph}}
\end{Beispiel}
\end{frame}
\section{AXE IT?}
\subsection{\secname: Mergen}
\begin{frame}
\frametitle{\subsecname}
\begin{itemize}
\item Ein zweig soll in einen anderen integriert werden
\item Folgende Möglichekteiten
\begin{itemize}
\item Fast Forward
\item Drei-Wege-Merge
\end{itemize}
\end{itemize}
\end{frame}
\subsection{\secname: Fast-Forward Merge}
\begin{frame}
\frametitle{\subsecname}
Branch \code{A} soll in \code{B} gemerget werden
\begin{itemize}
\item Nur möglich wenn B direkter Vorgänger von A
\item Dann Zeiger von branch B auf A verschieben
\item Erzeugt keinen Merge Commit (!)
\end{itemize}
\center {\huge \alert{Grafik: Example für ff}} \\
{\huge \alert{Grafik: ergebnis}}
\end{frame}
\subsection{\secname: 3-Wege-Merge}
\begin{frame}
\frametitle{\subsecname}
Branch \code{A} soll in \code{B} gemerget werden,
ihr nächster gemeinsamer Vorgägner ist \code{C}
\begin{itemize}
\item Erzeugt neuen commit mit Vorgänger
\code{A} und \code{B}
\item branch \code{B} zeigt nun auf diesen commit
\item \code{tree} des commits enthält gemerget Version
\end{itemize}
\center {\huge \alert{Grafik: Example für 3wm}} \\
{\huge \alert{Grafik: ergebnis}}
\end{frame}
\section{Branches}
\subsection{\secname: Beispiel merge}
\begin{frame}
\frametitle{\subsecname}
Bob hat auf dem \code{master} branch am Beweis weitergearbeitet. \\
Alice ist fertig im \code{performance} branch
und möchte in den \code{master} mergen.
\begin{Beispiel}
\begin{commandline}
\cmd{git checkout} master & \\
\cmd{git merge} performance & \\
\out{Merge made by the 'ort' strategy.} \\
\out{~algo.py | 4 +++-} \\
\out{~1 file changed, 3 insertions(+), 1 deletion(-)} \\
\end{commandline}
\only<1>{\center{} {\huge \alert{Grafik: zustand}}}
\only<2>{\center{} {\huge \alert{Grafik: ergebnis}}}
\end{Beispiel}
\end{frame}
%
% Remotes
%
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment