%&git
\begin{document}
\begin{frame}
	\titlepage
\end{frame}

\section{What is GIT}
\subsection{Who am I?}
\begin{frame}
	\frametitle{Who am I?}
	\begin{itemize}
		\item Mart Lubbers
		\item Bachelors in Artificial Intelligence
		\item 1th year master Software science
		\item
			{\tiny\url{https://ygdrassil.martlubbers.net/git/gitflashtalk.git}}
		\item SHA of the commit of this presentation:
			{\tiny\GITAbrHash}
	\end{itemize}
\end{frame}

\subsection{What is git}
\begin{frame}
	\frametitle{History of version control}
	\begin{block}{What is version control?}
		\begin{itemize}
			\item Text files
			\item Collaboration
			\item Possibly centralized or distributed
		\end{itemize}
	\end{block}

	\begin{block}{History}
		\begin{tabular}{lllp{6em}l}
			\toprule
			Gen & Networking & Operations & Concurrency & Examples\\
			\midrule
			1 & None & One file & Locks & RCS, SCSS\\
			2 & Centralized & Multi-file & Merge before commit & CVS, SVN\\
			3 & Distributed & Changeset & Commit before merge & 
				Git, Mercurial\\
			\bottomrule
		\end{tabular}
		{\tiny Table from \url{%
			http://ericsink.com/vcbe/html/history_of_version_control.html}}
	\end{block}
\end{frame}

\begin{frame}[fragile]
	\frametitle{What is Git}
	\begin{block}{Origins}
		\begin{itemize}
			\item Pronounce: \textipa{[g\'\i t]} 
			\item 2005 because \textit{Bitkeeper} changed terms
			\item Linux kernel
		\end{itemize}
	\end{block}

	\begin{block}{Initial \texttt{readme} from 2005}
		\begin{minted}{text}
	GIT - the stupid content tracker

"git" can mean anything, depending on your mood.

 - random three-letter combination that is pronounceable, and not
   actually used by any common UNIX command.  The fact that it is a
   mispronounciation of "get" may or may not be relevant.
 - stupid. contemptible and despicable. simple. Take your pick from the
   dictionary of slang.
 - "global information tracker": you're in a good mood, and it actually
   works for you. Angels sing, and a light suddenly fills the room. 
 - "goddamn idiotic truckload of sh*t": when it breaks
		\end{minted}
	\end{block}
\end{frame}

\begin{frame}
	\frametitle{Why Git?}
	\begin{block}{Pros}
		\begin{itemize}
			\item Fast
			\item Scaleable
			\item Simple
			\item Support for non linear development
			\item Intermediate stage between committing and pushing
		\end{itemize}
	\end{block}

	\begin{block}{Cons}
		\begin{itemize}
			\item Binary files
			\item Intermediate stage between committing and pushing
		\end{itemize}
	\end{block}
\end{frame}

\begin{frame}
	\frametitle{Before we start}
	\pause
	\huge Git is not Github
\end{frame}

\section{Introduction}
\subsection{Installation}
\begin{frame}[fragile]
	\begin{block}{{\Large\Smiley\Smiley} Linux}
		Depending on the distribution you may have to do:\\
		\mint{console}{# apt-get install git}
		\mint{console}{# pacman -S git}
		\mint{console}{# yum install git}
		\mint{console}{# emerge --ask dev-vcs/git}
		Etc\ldots
	\end{block}
		
	\begin{block}{{\Large\Frowny\Smiley} Mac}
		Install via XCode tools. Just run \mintinline{console}{|\$| git} and
		when Git is not installed it will prompt you with instructions.
	\end{block}
			
	\begin{block}{{\Large\Frowny\Frowny} Windows}
		Downoad the binary from \url{http://git-scm.com/download/win} and
		install.
	\end{block}
\end{frame}

\begin{frame}[fragile]
	\begin{block}{Linux/Mac}
		\begin{itemize}
			\item[Step 1.] Open your favourite terminal.
			\item[Step 2.]
				\begin{minted}{console}
|\$| git --version
git version 2.7.2
				\end{minted}
		\end{itemize}
	\end{block}
		
	\begin{block}{Windows}
		\begin{itemize}
			\item[Step 1.] Open \texttt{git-bash}. \texttt{git-bash} is a UNIX
				like environment with all the necessary tools.
			\item[Step 2.]
				\begin{minted}{console}
frobnicator@frobmachine MINGW64 ~
|\$| git --version
git version 2.7.2.windows.1
				\end{minted}
		\end{itemize}
	\end{block}
\end{frame}

\section{Local}

\section{Remote}

\section{Conclusion}

\end{document}
