Commit bc9e18f4 authored by Mihai's avatar Mihai

Introduction step by step.

parent 3b7a23c6
This diff is collapsed.
This source diff could not be displayed because it is too large. You can view the blob instead.
This diff is collapsed.
This source diff could not be displayed because it is too large. You can view the blob instead.
\documentclass[slidestop]{beamer}
\usepackage{tikz}
\input{../shared/shared.tex}
\author{Jeroen F. J. Laros}
\author{}
\title{\courseTitle}
\providecommand{\mySubTitle}{Introduction to Version Control}
\providecommand{\myConference}{\courseTitle}
......@@ -22,76 +24,166 @@
% First page of the presentation.
\section{Introduction}
\subsection{Version control}
\section{What is version control?}
\subsection{Definition}
\begin{pframe}
\emph{The management of changes to documents, computer programs, large web
sites, and other collections of information.} --- Wikipedia.
\bigskip
\pause
\emph{The \textbf{management of changes} to documents, computer programs, large web
sites, and other collections of information.}\\
--- \textcolor{darkgray}{\href{https://en.wikipedia.org/wiki/Version_control}{Wikipedia}}
\\ \\
\emph{A system that \textbf{records changes} to a file or set of files
over time so that you can recall specific versions later.}\\
--- \textcolor{darkgray}{\href{https://git-scm.com/book/en/v2/Getting-Started-About-Version-Control}{https://git-scm.com/}}
General features:
\begin{itemize}
\item Keeping track of your files in an orderly manner.
\begin{tikzpicture}[remember picture,overlay]
\node[xshift=-3.3cm,yshift=-7.2cm] at (current page.north east) {\includegraphics[width=4cm]{images/version_control-slide.pdf}};
\end{tikzpicture}
\end{pframe}
\subsection{Step by step}
\begin{pframe}
\begin{center}
\includegraphics[width=1\textwidth]{images/vcs_example/vcs_example_00.pdf}
\end{center}
\end{pframe}
\begin{pframe}
\begin{center}
\includegraphics[width=1\textwidth]{images/vcs_example/vcs_example_01.pdf}
\end{center}
\end{pframe}
\begin{pframe}
\begin{center}
\includegraphics[width=1\textwidth]{images/vcs_example/vcs_example_02.pdf}
\end{center}
\end{pframe}
\begin{pframe}
\begin{center}
\includegraphics[width=1\textwidth]{images/vcs_example/vcs_example_03.pdf}
\end{center}
\end{pframe}
\begin{pframe}
\begin{center}
\includegraphics[width=1\textwidth]{images/vcs_example/vcs_example_04.pdf}
\end{center}
\end{pframe}
\begin{pframe}
\begin{center}
\includegraphics[width=1\textwidth]{images/vcs_example/vcs_example_05.pdf}
\end{center}
\end{pframe}
\begin{pframe}
\begin{center}
\includegraphics[width=1\textwidth]{images/vcs_example/vcs_example_06.pdf}
\end{center}
\end{pframe}
\begin{pframe}
\begin{center}
\includegraphics[width=1\textwidth]{images/vcs_example/vcs_example_07.pdf}
\end{center}
\end{pframe}
\begin{pframe}
\begin{center}
\includegraphics[width=1\textwidth]{images/vcs_example/vcs_example_08.pdf}
\end{center}
\end{pframe}
\begin{pframe}
\begin{center}
\includegraphics[width=1\textwidth]{images/vcs_example/vcs_example_09.pdf}
\end{center}
\end{pframe}
\begin{pframe}
General features:
\begin{itemize}
\item Keep track of your files in an orderly manner.
\begin{itemize}
\item Hiding old versions.
\item Recording who made changes and when.
\item Hide old versions.
\item Check the differences between current and older versions.
\item Record who made changes and when.
\end{itemize}
\item Enables collaboration.
\end{itemize}
\end{pframe}
\end{pframe}
\subsection{Why should I use it?}
\begin{pframe}
\begin{figure}[]
\begin{center}
\fbox{
\includegraphics[height=0.7\textheight]{project_tree}
}
\end{center}
\caption{``I have my own system.''}
\end{figure}
For a single user:
\begin{itemize}
\item Revert files to a previous state.
\item Revert the entire project back to a previous state.
\item Review changes made over time.
\item Backup.
\end{itemize}
\pause
For multiple users:
\begin{itemize}
\item A reliable way to share files between people/computers.
\item Allow multiple people working on the same project at the same time.
\item Conflict resolution.
\item See who made which changes at which time.
\end{itemize}
\end{pframe}
\subsection{Why should I use it?}
\subsection{Why should I not use version control?}
\begin{pframe}
For a single user:
\bigskip
\begin{itemize}
\item Revert files to a previous state.
\item Revert the entire project back to a previous state.
\item Review changes made over time.
\item Backup.
\item I have my own system.
\end{itemize}
\bigskip
\pause
\begin{tikzpicture}[remember picture,overlay]
\node[xshift=-3.4cm,yshift=-5.4cm] at (current page.north east) {\includegraphics[width=6cm]{images/project_tree.pdf}};
\end{tikzpicture}
\end{pframe}
For multiple users:
\begin{pframe}
A list of common excuses:
\begin{itemize}
\item A reliable way to share files between people/computers.
\item Allow multiple people working on the same project at the same time.
\item Conflict resolution.
\item See who made which changes at which time.
\item I have my own system.
\item It is too much work.
\item I am the only one working \\ on this project.
\item This code will not be \\ used by anyone else.
\item The bugs can be \\ tracked forever.
\item \ldots
\end{itemize}
\begin{tikzpicture}[remember picture,overlay]
\node[xshift=-3.4cm,yshift=-5.4cm] at (current page.north east) {\includegraphics[width=6cm]{images/project_tree.pdf}};
\end{tikzpicture}
\end{pframe}
\subsection{Why should I not use it?}
\begin{pframe}
A list of common excuses:
\begin{itemize}
\item It is too much work.
\item I have my own system.
\item I am the only one working on this project.
\item This code will not be used by anyone else.
\item The bugs can be tracked forever.
\item It is too much work.
\item I am the only one working \\ on this project.
\item This code will not be \\ used by anyone else.
\item The bugs can be \\ tracked forever.
\item \ldots
\end{itemize}
\bigskip
\pause
Eventually leading to:
\begin{itemize}
\item I'm too busy rewriting the code I accidentally deleted.
\end{itemize}
\begin{tikzpicture}[remember picture,overlay]
\node[xshift=-3.8cm,yshift=-5.6cm] at (current page.north east) {\includegraphics[width=7cm]{images/desperate.pdf}};
\end{tikzpicture}
\end{pframe}
\subsection{Local repository}
\begin{pframe}
\begin{figure}[]
......
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