versionControl/vcs.tex
author Shantanu <shantanu@fossee.in>
Mon, 28 Dec 2009 22:54:27 +0530
changeset 77 708e1f6a9a89
child 78 216f6670abfd
permissions -rw-r--r--
Created initial slides for VCS till merging.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
77
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
     1
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
     2
% Version Control Systems
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
     3
%
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
     4
% Author: FOSSEE 
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
     5
% Copyright (c) 2009, FOSSEE, IIT Bombay
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
     6
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
     7
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
     8
\documentclass[14pt,compress]{beamer}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
     9
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    10
\mode<presentation>
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    11
{
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    12
  \usetheme{Warsaw}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    13
  \useoutertheme{infolines}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    14
  \setbeamercovered{transparent}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    15
}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    16
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    17
\usepackage[english]{babel}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    18
\usepackage[latin1]{inputenc}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    19
%\usepackage{times}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    20
\usepackage[T1]{fontenc}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    21
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    22
% Taken from Fernando's slides.
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    23
\usepackage{ae,aecompl}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    24
\usepackage{mathpazo,courier,euler}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    25
\usepackage[scaled=.95]{helvet}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    26
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    27
\definecolor{darkgreen}{rgb}{0,0.5,0}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    28
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    29
\usepackage{listings}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    30
\lstset{language=Python,
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    31
    basicstyle=\ttfamily\bfseries,
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    32
    commentstyle=\color{red}\itshape,
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    33
  stringstyle=\color{darkgreen},
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    34
  showstringspaces=false,
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    35
  keywordstyle=\color{blue}\bfseries}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    36
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    37
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    38
% Macros
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    39
\setbeamercolor{emphbar}{bg=blue!20, fg=black}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    40
\newcommand{\emphbar}[1]
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    41
{\begin{beamercolorbox}[rounded=true]{emphbar} 
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    42
      {#1}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    43
 \end{beamercolorbox}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    44
}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    45
\newcounter{time}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    46
\setcounter{time}{0}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    47
\newcommand{\inctime}[1]{\addtocounter{time}{#1}{\tiny \thetime\ m}}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    48
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    49
\newcommand{\typ}[1]{\lstinline{#1}}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    50
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    51
\newcommand{\kwrd}[1]{ \texttt{\textbf{\color{blue}{#1}}}  }
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    52
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    53
%%% This is from Fernando's setup.
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    54
% \usepackage{color}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    55
% \definecolor{orange}{cmyk}{0,0.4,0.8,0.2}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    56
% % Use and configure listings package for nicely formatted code
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    57
% \usepackage{listings}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    58
% \lstset{
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    59
%    language=Python,
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    60
%    basicstyle=\small\ttfamily,
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    61
%    commentstyle=\ttfamily\color{blue},
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    62
%    stringstyle=\ttfamily\color{orange},
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    63
%    showstringspaces=false,
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    64
%    breaklines=true,
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    65
%    postbreak = \space\dots
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    66
% }
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    67
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    68
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    69
% Title page
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    70
\title[Version Control Systems]{SEES: Version Control Systems}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    71
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    72
\author[FOSSEE] {FOSSEE}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    73
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    74
\institute[IIT Bombay] {Department of Aerospace Engineering\\IIT Bombay}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    75
\date[]{}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    76
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    77
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    78
%\pgfdeclareimage[height=0.75cm]{iitmlogo}{iitmlogo}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    79
%\logo{\pgfuseimage{iitmlogo}}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    80
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    81
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    82
%% Delete this, if you do not want the table of contents to pop up at
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    83
%% the beginning of each subsection:
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    84
\AtBeginSubsection[]
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    85
{
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    86
  \begin{frame}<beamer>
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    87
    \frametitle{Outline}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    88
    \tableofcontents[currentsection,currentsubsection]
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    89
  \end{frame}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    90
}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    91
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    92
\AtBeginSection[]
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    93
{
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    94
  \begin{frame}<beamer>
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    95
    \frametitle{Outline}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    96
    \tableofcontents[currentsection,currentsubsection]
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    97
  \end{frame}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    98
}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
    99
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   100
% If you wish to uncover everything in a step-wise fashion, uncomment
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   101
% the following command: 
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   102
%\beamerdefaultoverlayspecification{<+->}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   103
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   104
%%\includeonlyframes{current,current1,current2,current3,current4,current5,current6}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   105
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   106
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   107
% DOCUMENT STARTS
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   108
\begin{document}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   109
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   110
\begin{frame}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   111
  \maketitle
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   112
\end{frame}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   113
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   114
% CREATING TOC 
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   115
\begin{frame}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   116
  \frametitle{Outline}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   117
  \tableofcontents
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   118
  % You might wish to add the option [pausesections]
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   119
\end{frame}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   120
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   121
% Introduction to course-need of version control, history, options available.
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   122
\section{Introduction}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   123
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   124
\begin{frame}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   125
  \frametitle{What is Version Control?}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   126
  \begin{block}{From a blog post}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   127
    ``Version control (or source control) is nothing more arcane than keeping copies of ones work as one make changes to it.''
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   128
  \end{block}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   129
  \pause
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   130
  \begin{block}{}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   131
    It is better to use these tools rather then wasting creativity to invent VCS which have files with names like \begin{color}{red}{prog1.py, prog2.py}\end{color} or \begin{color}{red}ass1.py, ass2.py.\end{color}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   132
  \end{block}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   133
\end{frame}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   134
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   135
\begin{frame}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   136
  \frametitle{Motivation behind such tools}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   137
  \begin{itemize}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   138
  \item Track the history and evolution of a program.
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   139
  \item To collaborate effectively on a project.
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   140
  \item \begin{color}{red}``To err is Human''\end{color} \pause for recovery we have ``Version Control''
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   141
  \end{itemize}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   142
\end{frame}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   143
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   144
\begin{frame}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   145
  \frametitle{How is done What is done?}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   146
  \begin{itemize}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   147
  \item It keeps track of changes you make to a file. You can improvise, revisit, and amend.
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   148
  \item all procedure is logged/recorded, so you and others can follow the development cycle.
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   149
  \end{itemize}  
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   150
\end{frame}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   151
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   152
\begin{frame}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   153
  \frametitle{Do we really need this?}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   154
  \emphbar{For team of people working remotely(even different computers/machines) on a project use of version control is inevitable!}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   155
  \emphbar{For single person: managing projects and assignments becomes easy}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   156
  \pause
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   157
  \emphbar{Its a good habit!}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   158
\end{frame}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   159
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   160
\begin{frame}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   161
  \frametitle{Whats on the menu!}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   162
  \begin{itemize}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   163
  \item cvs(Concurrent Version System)
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   164
  \item svn (Subversion)
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   165
  \item hg (Mercurial)
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   166
  \item bzr (Bazaar)
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   167
  \item git
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   168
  \end{itemize}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   169
\end{frame}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   170
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   171
% Introduction to jargons 
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   172
\section{Learning the Lingo!}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   173
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   174
\begin{frame}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   175
  \frametitle{Common jargons: Basic setup}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   176
  \begin{itemize}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   177
  \item Repository(repo):\\
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   178
        The folder with all files.
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   179
  \item Server:\\
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   180
        Machine with main inventory/repo.
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   181
  \item Client:\\
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   182
        Local machines with copy of main repo.
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   183
  \end{itemize}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   184
\end{frame}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   185
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   186
\begin{frame}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   187
  \frametitle{Actions}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   188
  \begin{itemize}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   189
  \item Add:\\
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   190
    Adding file into the repo for the first time.
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   191
  \item Version:\\
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   192
    Version number of a file.
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   193
  \item Head/Tip:\\
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   194
    The latest revision of the repo.
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   195
  \item Check out/Clone:\\
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   196
    Initial download of repo onto machine.
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   197
  \item Commit:\\
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   198
    Recording a change.
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   199
  \item Change log/History:\\
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   200
    List of changes made to repo.
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   201
  \end{itemize}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   202
\end{frame}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   203
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   204
\begin{frame}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   205
  \frametitle{Actions cont...}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   206
  \begin{itemize}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   207
  \item Branch:\\
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   208
    Separate local copy of repo for bug fixing, testing.
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   209
  \item Diff/Change:\\
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   210
    Finding the differences in a file in two versions.
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   211
  \item Merge (or patch):\\
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   212
    Apply the changes to file, to make it up-to-date.
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   213
  \item Conflict:\\
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   214
    When merging a file creates a contradict.
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   215
  \item Resolve:\\
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   216
    Fixing the conflict manually.
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   217
  \end{itemize}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   218
\end{frame}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   219
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   220
% Types of Version Controls
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   221
\section{Types of VCS}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   222
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   223
\begin{frame}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   224
  \frametitle{Types:}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   225
  Based on way of managing the repo there are two types of VCS:
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   226
  \begin{itemize}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   227
  \item Centralized VCS
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   228
  \item Distributed VCS
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   229
  \end{itemize}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   230
\end{frame}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   231
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   232
\begin{frame}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   233
  \frametitle{Why hg?}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   234
  \begin{itemize}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   235
  \item Easy to learn and use.
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   236
  \item Lightweight.
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   237
  \item Scales excellently.
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   238
  \item Based on Python.
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   239
  \end{itemize}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   240
\end{frame}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   241
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   242
% Initializing the repo, cloning, committing changes, pushing, pulling to repo.
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   243
\section{Getting Started}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   244
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   245
\begin{frame}[fragile]
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   246
  \frametitle{Getting comfortable:}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   247
  Try following commands:
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   248
  \begin{lstlisting}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   249
    $ hg version    
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   250
    $ hg help
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   251
    $ hg help diff
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   252
  \end{lstlisting} %$
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   253
\end{frame}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   254
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   255
\begin{frame}[fragile]
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   256
  \frametitle{Cloning a repo}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   257
  Clone is used to make a copy of an existing repository. This repo can be both local or remote.
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   258
  \begin{lstlisting}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   259
$ hg clone http://hg.serpentine.com/tutorial/hello 
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   260
     localCopyhello
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   261
  \end{lstlisting}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   262
  And we get a local copy of this repository. 
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   263
  \begin{lstlisting}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   264
$ ls localCopyhello/
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   265
hello.c  Makefile
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   266
  \end{lstlisting}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   267
\end{frame}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   268
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   269
\begin{frame}[fragile]
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   270
  \frametitle{Creating a repo}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   271
  To start a new repository \typ{hg} provides \typ{init} command.
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   272
  \begin{lstlisting}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   273
$ mkdir Fevicol
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   274
$ cd Fevicol/
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   275
$ echo "print 'Yeh Fevicol ka majboot 
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   276
              jod hai'" > feviStick.py
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   277
$ ls -a
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   278
.  ..  feviStick.py
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   279
$ hg init
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   280
$ ls -a
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   281
.  ..  feviStick.py  .hg
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   282
  \end{lstlisting}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   283
\typ{.hg} folder will store the logs related to this repo.
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   284
\end{frame}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   285
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   286
\begin{frame}[fragile]
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   287
  \frametitle{Cloning a local repo: Branching}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   288
  All \typ{hg} repositories are self-contained, and independent which can be cloned. Like:
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   289
  \begin{lstlisting}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   290
$ hg clone localCopyhello newCopy
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   291
updating working directory
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   292
2 files updated, 0 files merged, 
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   293
0 files removed, 0 files unresolved
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   294
  \end{lstlisting}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   295
or
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   296
  \begin{lstlisting}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   297
$ hg clone Fevicol Fevicol-pull
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   298
updating working directory
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   299
0 files updated, 0 files merged, 
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   300
0 files removed, 0 files unresolved
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   301
  \end{lstlisting}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   302
\end{frame}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   303
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   304
\begin{frame}[fragile]
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   305
  \frametitle{History/Logs}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   306
  To check out track record of a repo one has to use \typ{log} command.
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   307
  \begin{lstlisting}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   308
$ cd localCopyhello
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   309
$ hg log    
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   310
  \end{lstlisting}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   311
  The output of previous command have following fields:
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   312
  \begin{itemize}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   313
  \item changeset: identifiers for the changeset.
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   314
  \item user: person who creates the changeset.
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   315
  \item date: The date and time of creation of changeset.
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   316
  \item summary: The one line description of changeset.
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   317
  \end{itemize}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   318
\end{frame}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   319
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   320
\begin{frame}[fragile]
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   321
  \frametitle{History/Logs cont...}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   322
By default it returns complete logs of all changes. To make it selective try:
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   323
\begin{lstlisting}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   324
  $ hg log -r 3
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   325
  $ hg log -r 2:4
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   326
\end{lstlisting}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   327
To see tip/latest commit history use:\\
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   328
\typ{$ hg tip} %$
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   329
\end{frame}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   330
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   331
\begin{frame}[fragile]
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   332
  \frametitle{Adding files}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   333
  We will revisit the Fevicol repo we created earlier.
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   334
  \begin{lstlisting}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   335
$ cd Fevicol
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   336
$ hg log
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   337
$ hg status
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   338
? feviStick.py
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   339
  \end{lstlisting} %$
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   340
  "?" sign in front of name indicates that this file is not yet part of track record. \typ{add} command is used to add new files to repo.
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   341
  \begin{lstlisting}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   342
$ hg add feviStick.py
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   343
$ hg st
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   344
A feviStick.py
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   345
  \end{lstlisting}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   346
\end{frame}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   347
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   348
\begin{frame}[fragile]
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   349
  \frametitle{Committing changes}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   350
  \typ{hg} uses \typ{commit} (alias \typ{ci}) command to make changes logged. So after adding a file, we have to commit it also by:
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   351
  \begin{lstlisting}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   352
$ hg ci -u "Shantanu <shantanu@fossee.in>" 
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   353
        -m "First commit."
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   354
$ hg log
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   355
changeset:   0:84f5e91f4de1
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   356
tag:         tip
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   357
user:        Shantanu <shantanu@fossee.in>
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   358
date:        Fri Aug 21 23:37:13 2009 +0530
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   359
summary:     First commit.    
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   360
  \end{lstlisting}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   361
\end{frame}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   362
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   363
\begin{frame}[fragile]
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   364
  \frametitle{More basic operations}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   365
  \begin{lstlisting}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   366
$ hg rename feviStick.py feviCol.py
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   367
$ hg st
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   368
A feviCol.py
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   369
$ hg ci -u "Shantanu <shantanu@fossee.in>" 
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   370
        -m "Renamed feviStick.py."
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   371
$ hg tip
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   372
changeset:   1:d948fb4137c5
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   373
tag:         tip
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   374
user:        Shantanu <shantanu@fossee.in>
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   375
date:        Sat Aug 22 00:11:25 2009 +0530
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   376
summary:     Renamed feviStick.py.
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   377
  \end{lstlisting}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   378
%% Other commands which can be handy are \typ{cp}, \typ{remove}, \typ{revert} etc.
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   379
\end{frame}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   380
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   381
% Introduction to concepts of branches, merging patch?
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   382
\section{Sharing and Collaborating}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   383
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   384
\begin{frame}[fragile]
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   385
  \frametitle{Distributing changes}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   386
  As this repo is self-contained, hence changeset just created are local and are not propagated to previously cloned Fevicol-pull.
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   387
  \begin{lstlisting}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   388
$ hg pull 
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   389
pulling from /home/baali/Fevicol
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   390
requesting all changes
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   391
adding changesets
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   392
adding manifests
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   393
adding file changes
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   394
added 2 changesets with 2 changes to 2 files
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   395
(run 'hg update' to get a working copy)
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   396
  \end{lstlisting} %$
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   397
\end{frame}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   398
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   399
\begin{frame}[fragile]
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   400
  \frametitle{Pulling changesets cont...}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   401
  as last line of previous command suggest, hg \typ{pull} does not(by default) update current directory. It just imports changesets. To add all these changesets one have to update using \typ{up} command:
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   402
  \begin{lstlisting}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   403
$ cd Fevicol-pull
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   404
$ ls -a
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   405
.  ..  .hg
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   406
$ hg up
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   407
2 files updated, 0 files merged, 
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   408
0 files removed, 0 files unresolved
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   409
$ ls -a
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   410
.  ..  feviCol.py  feviStick.py  .hg    
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   411
  \end{lstlisting}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   412
\end{frame}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   413
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   414
\begin{frame}[fragile]
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   415
  \frametitle{Making changes across the repos}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   416
  \typ{$ cd Fevicol-clone/}\\ %$
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   417
  Lets edit and correct the feviStick.py 
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   418
\begin{lstlisting}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   419
$ echo "print 'Ab no more Chip Chip'" 
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   420
        > feviStick.py
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   421
$ hg st
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   422
M feviStick.py
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   423
\end{lstlisting}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   424
  'M' sign indicates that Mercurial has noticed change.\\
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   425
\end{frame}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   426
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   427
\begin{frame}[fragile]
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   428
  \frametitle{Revisiting changes}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   429
To look back at the changes made there is \typ{diff} command:
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   430
\begin{lstlisting}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   431
$ hg diff
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   432
diff -r a7912d45f47c feviStick.py
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   433
--- a/feviStick.py   Sun Aug 23 22:34:35 2009 +0530
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   434
+++ b/feviStick.py   Sun Aug 23 22:47:49 2009 +0530
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   435
@@ -1,1 +1,1 @@
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   436
-print 'Yeh Fevicol ka Majboot jod hai'
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   437
+print 'Ab no more Chip Chip'
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   438
  \end{lstlisting} %$
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   439
  These changes are not logged until you commit them.\\
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   440
  \begin{lstlisting}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   441
$ hg ci -u "Shantanu <shantanu@fossee.in>" 
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   442
      -m "Changed tagline for feviStick.py."
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   443
  \end{lstlisting} %$
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   444
\end{frame}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   445
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   446
\begin{frame}[fragile]
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   447
  \frametitle{Syncing two repos}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   448
  Now to bring both the repos to same stage one have to \typ{push} changes.
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   449
  \begin{lstlisting}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   450
$ hg push 
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   451
pushing to /home/baali/Fevicol
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   452
searching for changes
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   453
adding changesets
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   454
adding manifests
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   455
adding file changes
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   456
added 1 changesets with 1 changes to 1 files
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   457
  \end{lstlisting} %$
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   458
\end{frame}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   459
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   460
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   461
\begin{frame}[fragile]
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   462
  \frametitle{Syncing cont...}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   463
  Same as pulling, pushing wont update the main repo by default. Try running following command:
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   464
  \begin{lstlisting}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   465
$ hg tip    
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   466
$ cat feviStick.py
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   467
  \end{lstlisting}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   468
  \typ{tip} shows latest changeset, but content of file are not updated. We have to use \typ{up} on main branch
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   469
  \begin{lstlisting}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   470
$ hg up
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   471
1 files updated, 0 files merged, 0 files removed, 0 files unresolved    
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   472
  \end{lstlisting} %$
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   473
\end{frame}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   474
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   475
\begin{frame}[fragile]
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   476
  \frametitle{Merging}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   477
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   478
\end{frame}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   479
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   480
\begin{frame}[fragile]
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   481
  \frametitle{}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   482
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   483
\end{frame}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   484
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   485
% Steps to follow to make life easier. How to avoid/handle manual merges.
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   486
\section{Work flow: DOS and DON'Ts}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   487
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   488
\begin{frame}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   489
  \frametitle{Suggested Readings:}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   490
  \begin{itemize}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   491
  \item \url{http://hgbook.red-bean.com/}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   492
  \item \url{http://karlagius.com/2009/01/09/version-control-for-the-masses/}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   493
  \item Articles related to version control available on \url{http://betterexplained.com/}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   494
  \item \url{http://en.wikipedia.org/wiki/Revision_control}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   495
  \item \url{http://wiki.alliedmods.net/Mercurial_Tutorial}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   496
  \end{itemize}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   497
\end{frame}
708e1f6a9a89 Created initial slides for VCS till merging.
Shantanu <shantanu@fossee.in>
parents:
diff changeset
   498
\end{document}