Skip to content

Commit 576d271

Browse files
committed
Done
1 parent 17c9483 commit 576d271

File tree

10 files changed

+321
-20
lines changed

10 files changed

+321
-20
lines changed

chapters/ci-cd.tex

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,3 +4,25 @@ \section{CI/CD}\label{sec:ci-cd}
44
\Large
55
\textbf{CI/CD}
66
\end{frame}
7+
8+
\subsection{Was ist CI/CD}\label{subsec:was-ist-ci-cd}
9+
\begin{frame}[c]
10+
\slidehead
11+
\centering
12+
\large
13+
\textbf{CI/CD}
14+
\vspace{1em}
15+
\begin{enumerate}[<+->]
16+
\item \textbf{Continuous Integration}
17+
\item \textbf{Continuous Deployment}
18+
\item \textbf{Self-Hosting möglich (TeamCity, Jenkins, ...)}
19+
\item \textbf{Cloud-Plattformen (GitHub Actions, GitLab CI/CD, CircleCI, ...)}
20+
\end{enumerate}
21+
\end{frame}
22+
23+
\begin{frame}[c]
24+
\slidehead
25+
\centering
26+
\Large
27+
\textbf{GitHub Actions Live Demo}
28+
\end{frame}

chapters/platforms.tex

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
\section{Git Platforms}\label{sec:git-platforms}
2+
\begin{frame}[c]
3+
\centering
4+
\Large
5+
\textbf{Git Platforms}
6+
\end{frame}
7+
8+
\subsection{GitHub}\label{subsec:github}
9+
\begin{frame}[c]
10+
\slidehead
11+
\centering
12+
\large
13+
\textbf{GitHub}
14+
\vspace{1em}
15+
\begin{itemize}[<+->]
16+
\item \textbf{Git-Hosting-Service}
17+
\item \textbf{Kostenlos für öffentliche und private Repositories}
18+
\item \textbf{Kostenpflichtige Enterprise-Version}
19+
\item \textbf{Kostenpflichtige GitHub Pro-Version (free for education)}
20+
\item \textbf{Self-Hosting ist kostenpflichtig}
21+
\item \textbf{Closed Source}
22+
\item \textbf{Von Microsoft gekauft}
23+
\end{itemize}
24+
\end{frame}
25+
26+
\subsection{GitLab}\label{subsec:gitlab}
27+
\begin{frame}[c]
28+
\slidehead
29+
\centering
30+
\large
31+
\textbf{GitLab}
32+
\vspace{1em}
33+
\begin{itemize}[<+->]
34+
\item \textbf{Git-Hosting-Service}
35+
\item \textbf{Deutlich kleiner als GitHub aber wächst}
36+
\item \textbf{Kostenlos für öffentliche und private Repositories}
37+
\item \textbf{Kostenpflichtige Enterprise-Version}
38+
\item \textbf{Self-Hosting ist gratis (eine bezahlte Version gibt es auch)}
39+
\item \textbf{Open Source}
40+
\item \textbf{Von GitLab Inc.}
41+
\end{itemize}
42+
\end{frame}
43+
44+
\subsection{Andere Plattformen}\label{subsec:andere-plattformen}
45+
\begin{frame}[c]
46+
\slidehead
47+
\centering
48+
\large
49+
\textbf{Andere Plattformen}
50+
\vspace{1em}
51+
\begin{itemize}[<+->]
52+
\item \textbf{Bitbucket}
53+
\item \textbf{Gitee}
54+
\end{itemize}
55+
\end{frame}

chapters/workflows/centralized.tex

Lines changed: 20 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,19 @@ \section{Centralized Workflow}\label{sec:centralized-workflow}
88
\textbf{Centralized Workflow}
99
\end{frame}
1010

11+
\subsection{Der Workflow}\label{subsec:der-workflow}
12+
\begin{frame}[c]
13+
\slidehead
14+
\centering
15+
\large
16+
\textbf{Centralized Workflow}
17+
\vspace{1em}
18+
\begin{enumerate}[<+->]
19+
\item \textbf{Commit} auf den \textbf{Master}
20+
\item \textbf{Push} auf den \textbf{Master}
21+
\end{enumerate}
22+
\end{frame}
23+
1124
\subsection{Normalfall}\label{subsec:normalfall}
1225
\begin{frame}[c, fragile]
1326
\slidehead
@@ -91,8 +104,9 @@ \subsection{Normallfall Review}\label{subsec:normallfall-review}
91104
\normalsize
92105
\begin{enumerate}
93106
\item<2-> Wie skaliert der Workflow? \only<3->{\hfill\textbf{unklar}}
94-
\item<4-> Kann man Fehler einfach rückgängig machen? \only<5->{\hfill\textbf{geht}}
95-
\item<6-> Erzeugt dieser Workflow eine neue unnötige, kognitive Überlastung für das Team? \only<7->{\hfill\textbf{nein}}
107+
\item<4-> Können Bugs/Fehler einfach in den Master-Branch gelangen? \only<5->{\hfill\textbf{ja}}
108+
\item<6-> Kann man Fehler einfach rückgängig machen? \only<7->{\hfill\textbf{geht}}
109+
\item<8-> Erzeugt dieser Workflow eine neue unnötige, kognitive Überlastung für das Team? \only<9->{\hfill\textbf{nein}}
96110
\end{enumerate}
97111
\end{frame}
98112

@@ -339,7 +353,7 @@ \subsection{Rebase vs Merge}\label{subsec:rebase-vs-merge}
339353
\slidehead
340354
\centering
341355
\Large
342-
\bashcommand{git config --global pull.ff only}
356+
\bashcommand{git config \textminus\textminus global pull.ff only}
343357
\end{frame}
344358

345359
\subsection{Final Review}\label{subsec:final-review}
@@ -357,7 +371,8 @@ \subsection{Final Review}\label{subsec:final-review}
357371
\normalsize
358372
\begin{enumerate}
359373
\item<2-> Wie skaliert der Workflow? \only<3->{\hfill\textbf{nicht gut}}
360-
\item<4-> Kann man Fehler einfach rückgängig machen? \only<5->{\hfill\textbf{geht}}
361-
\item<6-> Erzeugt dieser Workflow eine neue unnötige, kognitive Überlastung für das Team? \only<7->{\hfill\textbf{nein}}
374+
\item<4-> Können Bugs/Fehler einfach in den Master-Branch gelangen? \only<5->{\hfill\textbf{ja}}
375+
\item<6-> Kann man Fehler einfach rückgängig machen? \only<7->{\hfill\textbf{geht}}
376+
\item<8-> Erzeugt dieser Workflow eine neue unnötige, kognitive Überlastung für das Team? \only<9->{\hfill\textbf{nein}}
362377
\end{enumerate}
363378
\end{frame}

chapters/workflows/feature-branch.tex

Lines changed: 59 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,26 @@
1-
\subsection{Feature Branch Workflow}\label{subsec:feature-branch-workflow}
1+
\section{Feature Branch Workflow}\label{sec:feature-branch-workflow}
22
\begin{frame}[c]
33
\centering
44
\Large
55
\textbf{Feature Branch Workflow}
66
\end{frame}
77

8+
\subsection{Der Workflow}\label{subsec:der-workflow}
9+
\begin{frame}[c]
10+
\slidehead
11+
\centering
12+
\large
13+
\textbf{Feature Branch Workflow}
14+
\vspace{1em}
15+
\begin{enumerate}[<+->]
16+
\item \textbf{Feature Branch von Master abbranchen}
17+
\item \textbf{Feature implementieren}
18+
\item \textbf{Feature Branch mergen}
19+
\item \textbf{Feature Branch löschen}
20+
\end{enumerate}
21+
\end{frame}
22+
23+
\subsection{Teamarbeit}\label{subsec:teamarbeit}
824
\begin{frame}[c]
925
\slidehead
1026
\centering
@@ -36,4 +52,46 @@ \subsection{Feature Branch Workflow}\label{subsec:feature-branch-workflow}
3652
\draw<2-5>[ref-arc] (feature/a) to (feature/a/1);
3753
\draw<3-7>[ref-arc] (feature/b) to (feature/b/1);
3854
\end{tikzpicture}
55+
56+
\vspace*{\fill}
57+
58+
\begin{onlyenv}<2>
59+
\bashcommandbob{git checkout -b feature/a \&\& git commit}
60+
\end{onlyenv}
61+
\begin{onlyenv}<3>
62+
\bashcommandalice{git checkout -b feature/b \&\& git commit}
63+
\end{onlyenv}
64+
\begin{onlyenv}<5>
65+
\bashcommandbob{git merge \textminus\textminus squash feature/a}
66+
\end{onlyenv}
67+
\begin{onlyenv}<6>
68+
\bashcommandbob{git branch -d feature/a}
69+
\end{onlyenv}
70+
\begin{onlyenv}<7>
71+
\bashcommandalice{git rebase master}
72+
\end{onlyenv}
73+
\begin{onlyenv}<8>
74+
\bashcommandalice{git merge \textminus\textminus squash feature/b \&\& git branch -d feature/b}
75+
\end{onlyenv}
76+
\end{frame}
77+
78+
\subsection{Final Review}\label{subsec:final-review}
79+
\begin{frame}[c]
80+
\slidehead
81+
\centering
82+
\Large
83+
\textbf{Final Review}
84+
\end{frame}
85+
86+
\begin{frame}[c]
87+
\slidehead
88+
\large
89+
\textbf{Bewertungskriterien}
90+
\normalsize
91+
\begin{enumerate}
92+
\item<2-> Wie skaliert der Workflow? \only<3->{\hfill\textbf{gut}}
93+
\item<4-> Können Bugs/Fehler einfach in den Master-Branch gelangen? \only<5->{\hfill\textbf{kinda}}
94+
\item<6-> Kann man Fehler einfach rückgängig machen? \only<7->{\hfill\textbf{geht}}
95+
\item<8-> Erzeugt dieser Workflow eine neue unnötige, kognitive Überlastung für das Team? \only<9->{\hfill\textbf{it depends}}
96+
\end{enumerate}
3997
\end{frame}

chapters/workflows/git-flow.tex

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
\section{Git Flow}\label{sec:github-flow}
2+
\begin{frame}[c]
3+
\centering
4+
\Large
5+
\textbf{Git Flow}
6+
\end{frame}
7+
8+
\subsection{Der Workflow}\label{subsec:der-workflow}
9+
\begin{frame}[c]
10+
\slidehead
11+
\centering
12+
\large
13+
\textbf{Git Flow}
14+
\vspace{1em}
15+
\begin{enumerate}[<+->]
16+
\item \textbf{dev Branch von master abbranchen}
17+
\item \textbf{Kritische Hotfixes direkt auf master}
18+
\item \textbf{Feature Branch von dev abbranchen}
19+
\item \textbf{Feature implementieren}
20+
\item \textbf{Pull Request erstellen \& reviewen \& mergen \& löschen}
21+
\item \textbf{Release-Branch von dev abbranchen}
22+
\item \textbf{Release-Branch in master \& dev mergen}
23+
\end{enumerate}
24+
\end{frame}
25+
26+
\begin{frame}[c]
27+
\centering
28+
\includegraphics[scale=.15]{../../pictures/git-flow}
29+
\end{frame}
30+
31+
\begin{frame}[c]
32+
\slidehead
33+
\large
34+
\textbf{Bewertungskriterien}
35+
\normalsize
36+
\begin{enumerate}
37+
\item<2-> Wie skaliert der Workflow? \only<3->{\hfill\textbf{sehr gut für große Teams}}
38+
\item<4-> Können Bugs/Fehler einfach in den Master-Branch gelangen? \only<5->{\hfill\textbf{ja}}
39+
\item<6-> Kann man Fehler einfach rückgängig machen? \only<7->{\hfill\textbf{geht}}
40+
\item<8-> Erzeugt dieser Workflow eine neue unnötige, kognitive Überlastung für das Team? \only<9->{\hfill\textbf{it depends}}
41+
\end{enumerate}
42+
\end{frame}

chapters/workflows/github-flow.tex

Lines changed: 95 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,95 @@
1+
\section{GitHub Flow}\label{sec:github-flow}
2+
\begin{frame}[c]
3+
\centering
4+
\Large
5+
\textbf{GitHub Flow}
6+
\end{frame}
7+
8+
\subsection{Der Workflow}\label{subsec:der-workflow}
9+
\begin{frame}[c]
10+
\slidehead
11+
\centering
12+
\large
13+
\textbf{GitHub Flow}
14+
\vspace{1em}
15+
\begin{enumerate}[<+->]
16+
\item \textbf{Feature Branch von Master abbranchen}
17+
\item \textbf{Feature implementieren}
18+
\item \textbf{Pull Request erstellen}
19+
\item \textbf{Pull Request reviewen}
20+
\item \textbf{Pull Request mergen}
21+
\item \textbf{Feature Branch löschen}
22+
\end{enumerate}
23+
\end{frame}
24+
25+
\begin{frame}[c]
26+
\centering
27+
\Large
28+
\textbf{Live Demo}
29+
\end{frame}
30+
31+
\subsection{Normaler Merge vs Squash Merge}\label{subsec:normaler-merge-vs-squash-merge}
32+
\begin{frame}[c]
33+
\slidehead
34+
\centering
35+
\begin{tikzpicture}
36+
\node[tiny-commit] at (0, 0)(a){};
37+
\node[tiny-commit] at (2, 0) (b){};
38+
\node[tiny-commit] at (4, 0) (c){};
39+
\node<4->[tiny-commit] at (6, 0) (d){};
40+
\node<5>[tiny-merge-commit, fill=TUDa-8a!50!TUDa-1c] at (10, 0) (f){};
41+
\node<6>[tiny-commit, fill=TUDa-8a!50] at (10, 0) (f){};
42+
\node<2->[tiny-commit, fill=TUDa-8a] at (6, -1) (feature/a/1){};
43+
\node<3->[tiny-commit, fill=TUDa-8a] at (8, -1) (feature/a/2){};
44+
\node[branch] at (13, 0) (master){master};
45+
\node<2->[branch] at (13, -1) (feature/a){feature/a};
46+
\draw[parent] (b) to (a);
47+
\draw[parent] (c) to (b);
48+
\draw<4->[parent] (d) to (c);
49+
\draw<2->[parent] (feature/a/1) to (c);
50+
\draw<3->[parent] (feature/a/2) to (feature/a/1);
51+
\draw<5->[parent] (f) to (d);
52+
\draw<5>[parent] (f) to (feature/a/2);
53+
\draw<1-3>[ref-arc] (master) to (c);
54+
\draw<4>[ref-arc] (master) to (d);
55+
\draw<5->[ref-arc] (master) to (f);
56+
\draw<2>[ref-arc] (feature/a) to (feature/a/1);
57+
\draw<3->[ref-arc] (feature/a) to (feature/a/2);
58+
\end{tikzpicture}
59+
60+
\vspace*{\fill}
61+
62+
\begin{onlyenv}<2>
63+
\bashcommandbob{git checkout -b feature/a \&\& git commit}
64+
\end{onlyenv}
65+
\begin{onlyenv}<3>
66+
\bashcommandbob{git commit}
67+
\end{onlyenv}
68+
\begin{onlyenv}<5>
69+
\bashcommandbob{git checkout master \&\& git merge feature/a}
70+
\end{onlyenv}
71+
\begin{onlyenv}<6>
72+
\bashcommandbob{git checkout master \&\& git merge \textminus\textminus squash feature/a}
73+
\end{onlyenv}
74+
\end{frame}
75+
76+
\subsection{Final Review}\label{subsec:final-review}
77+
\begin{frame}[c]
78+
\slidehead
79+
\centering
80+
\Large
81+
\textbf{Final Review}
82+
\end{frame}
83+
84+
\begin{frame}[c]
85+
\slidehead
86+
\large
87+
\textbf{Bewertungskriterien}
88+
\normalsize
89+
\begin{enumerate}
90+
\item<2-> Wie skaliert der Workflow? \only<3->{\hfill\textbf{slight improvement}}
91+
\item<4-> Können Bugs/Fehler einfach in den Master-Branch gelangen? \only<5->{\hfill\textbf{slight improvement}}
92+
\item<6-> Kann man Fehler einfach rückgängig machen? \only<7->{\hfill\textbf{geht}}
93+
\item<8-> Erzeugt dieser Workflow eine neue unnötige, kognitive Überlastung für das Team? \only<9->{\hfill\textbf{it depends}}
94+
\end{enumerate}
95+
\end{frame}

chapters/workflows/intro.tex

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -54,8 +54,9 @@ \subsection{Wie sieht ein erfolgreicher Git Workflow aus?}\label{subsec:wie-sieh
5454
\normalsize
5555
\begin{enumerate}
5656
\item<2-> Wie skaliert der Workflow?
57-
\item<3-> Kann man Fehler einfach rückgängig machen?
58-
\item<4-> Erzeugt dieser Workflow eine neue unnötige, kognitive Überlastung für das Team?
57+
\item<3-> Können Bugs/Fehler einfach in den Master-Branch gelangen?
58+
\item<4-> Kann man Fehler einfach rückgängig machen?
59+
\item<5-> Erzeugt dieser Workflow eine neue unnötige, kognitive Überlastung für das Team?
5960
\end{enumerate}
6061
\end{frame}
6162

common/preamble.tex

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,3 +14,4 @@
1414
fleqn,
1515
% shell_escape = false, % Kompatibilität mit sharelatex
1616
]{algoslides}
17+
\author{Alexander Städing}

pictures/git-flow.png

122 KB
Loading

0 commit comments

Comments
 (0)