Introduction
This is a course targetted at programmers who are interested in using the git version control system.
Git is reputed to be a system that's easier to learn "inside out". This course quickly skims over the "common" version control commands that most people are familiar with and then dives into the repository and it's format to make the students aware of what goes on beneath the hood so that they're comfortable using the system.
The course dives into daily use and gets more and more advanced as it goes on. We will cover basic usage, architecture, the branching model and some workflow concepts.
Course content
An outline of the contents follows
- Introduction
- Distributed version control in general
- Git in particular
- Obtaining git
- Setting up a repository
- Committing changes
- Viewing history
- Making changes
- Workflow
- The working copy
- The staging area
- The repository
- The remote(s)
- Architecture
- Snapshot storage
- Objects in git
- References
- Branches in git
- Branching
- Merging
- Rebasing
- Tagging
- Stashing
- Remotes
- Remote locations
- Tracking branches
- Fetching/pushing
- References
- Treeish's
- Submodules
- Repository hooks
- Useful tools
- Bisect
- Interactive add and rebase
- Suggested workflows
Prerequisites
All participants must come with a laptop to the course. It's best to have a GNU/Linux variant installed on it since git is a child of the UNIX tradition.
The laptop should have the following software installed on it.
- Git itself
- This script will be used to inspect the repository so it would be useful if people had ruby, grit and graphviz installed on their machines. This is not compulsory though.
The tutorial will be done on a Gnu/Linux platform and it would be best if the participants used the same.
Registered participants can contact me before the training if they
need help with installation and setup so that we don't waste time at
the venue. My email address is noufal at nibrahim dot net dot in.
Participants are expected to be knowledgeable about the general ideas of version control. Please contact me before the course if there are things you want clarified about the pre requisites.
Venue and timing
The training will take place at
Level 1
Tower B
The Millenia
1 & 2 Murphy Road
Ulsoor
Bangalore
Lunch and tea will be provided at the venue. Two wheeler parking should be available at the building since it's a weekend.
The training will take place on the 22nd and 23rd of October 2011. It will last from 10:00 am to 5:30 pm on both days.
There will be no internet at the venue so please make sure that you have everything you need before you come. There will be a local network so that the participants can share code and work with each others repositories.
Audience size and pricing
The price of the course is 5500 INR per head. The maximum class size is 18 so please book your tickets as soon as possible. Please go to http://git-training.doattend.com/ to register.
Miscellanea
For details on other trainings, to stay up to date about classes that I offer or to arrange a custom training for a company, please refer to to my trainings page.
For any clarifications, please contact noufal at nibrahim dot net
dot in.