Announce: Understanding Git, Workshop

Git has grown up to become the de-facto version control system for open source software development. Acquiring a good mental model of Git, will help people wield it correctly and work more efficiently. This workshop will provide the required internals of Git, to help people acquire the required mental model. The workshop starts right from the basics of Git, and covers the internals of Git, and then moves on to the power features of Git.

Date and Time

  • Dec 3, 9:30 AM to 5:30 PM

Venue

The workshop venue address is provided below

Innoart Technologies,
116, Pasumpon Muthuramalinga Tevar Rd,
Nandanam Extension, Nandanam,
Chennai

Location of the venue on Google maps: here

Workshop Ticket

This is a paid workshop, and the workshop ticket price starts from Rs. 1000 (inclusive of lunch).

Trainers

  • Vijay Kumar, Technologist at Zilogic Systems

  • Deepak, Technologist at Zilogic Systems

Pre-requisites

  • Should be familiar with the Linux command-line

  • Should be familiar with at-least one version control system

Hardware / Software Requirements

  • Supported operating systems: Mac OS X / Windows / Linux (Linux preferred)

  • Should have the following software installed

    • git >= 2.1.4

Tentative Schedule

Time Session

09:30

Setup and Introduction

10:00

Git Basics

11:00

Tea Break

11:15

Git Internals

01:00

Lunch Break

02:00

Git Remotes

03:30

Tea Break

03:45

Advanced Git

05:30

Feedback

Syllabus

Git Basics

  • Introduction to Version Control

  • Introduction to Git

  • Viewing History

  • Track and Untrack Files

  • Creating a New Repository

Git Internals

  • Building Git From Scratch

    • Simple Single File Model

    • SHA1 Single File Model

    • Ordered Single File Model

    • Detached Head Model

    • Multi-Branch Model

    • Merge Commit Model

    • Multi-File Model

  • Exploring a Git Repo

  • Staging

Git Remotes

  • Merging

  • Remote Repositories

    • Git Clone

    • Sharing Changes

    • Fetching Changes

    • Remote Tracking Branch

    • Managing Remotes

Advanced Git

  • Rebase Interactive

  • Interactive Add

  • Stash

  • Using GitHub