Intermediate Git

In this 8 hour course I will take you from being a beginner at Git, or even knowing nothing about Git at all, to being an intermediate Git user. I'll teach you the the correct 'Mental Model' necessary to really understand Git. That will help you understand the documentation better, and enable you to distinguish between the correct answers and the most highly upvoted answers on Stack Overflow. I can teach this course either at my own location on 444 N. Michigan Avenue in Chicago, or at your workplace.


This class is not only for developers. Designers and QA staff will also benefit from it. Only a basic familiarity with computers is required. But if you're a developer, you'll find this class indispensable.

Start Here

No prior knowledge of Git is necessary

A Computer

You must have a laptop (Mac or Linux or Windows) onto which you can install Git

Edit Files

You must know how to edit a simple text file on your computer. Atom, TextEdit, SublimeText, NotePad, BBEdit, vim, pico, and emacs are popular text editors


You should be able to view directories (folders) and their contents on your computer. You may use the command line or a GUI interface like the Finder or Windows Explorer

Course Details:

  • The next course will be held as two 4-hour sessions. The first session will be on Wednesday, 10/19/2016 from 9:00 AM - 1:00 PM. You can choose to have the second session on:
    • 10/19 from 2:00 PM - 6:00 PM
    • or 10/20 from 9:00 AM - 1:00 PM
    • or 10/26 from 9:00 AM - 1:00 PM
  • 444 N. Michigan Avenue. Chicago IL 60611
  • The deadline for signing up is 3:00 PM on Tuesday 10/11/2016
  • You will get one flash drive with all the course slides, examples, aliases, and sample repositories in electronic format
  • You will get a document with common (and some not-so-common) problems along with instructions on how to solve them using Git
  • You will get a membership to a Git-Users Slack channel so that after the class you can ask questions to me, or other students about specific Git issues you might be facing

Course Syllabus

  • Getting Started
    • Installing Git
    • Configuration
    • Basic Settings
  • Working with repositories
    • Creating repositories
    • Recording changes
    • Tagging
    • Viewing history
    • Customizing git - aliases
  • Working with branches
    • Creating branches
    • Merging branches
    • Introduction to branching workflows
    • Rebasing
    • Stashing
  • Introduction to GitHub
    • Generating your SSH key
    • Creating a GitHub Account
    • Mantaining your own repository
    • Cloning a repository
    • Forking someone else’s repository
  • GitFlow
  • Git Tools
    • Revision Selection
  • More GitHub
    • Contributing to a project
    • Managing pull requests
    • Adding collaborators
  • Solutions to common problems
  • GUI Tools
    • SourceTree
    • Tower
    • GitHub Desktop
    • Kaleidoscope
  • Git and the Shell
    • bash
    • zsh

Your Instructor

Your Instructor

The class will be taught by me, (Aijaz Ansari), the author of several popular iOS apps. I have been working professionally as a software developer for 20 years, and have been teaching in one capacity or another on and off for the past 30 years. Most recently, I've spent the last year mentoring 14 students as they start their careers as developers.


This is what our students have said about our previous classes:

"Class was very comprehensive, spent good amount of time on concepts, language structures, development environment, UI designs, and platform advanced features. Classes were recorded for reviews, homeworks were adequate. All in all great value for the money. Highly recommended teacher and content."

"Aijaz is an excellent instructor with a deep background in software development. His lessons were well thought out and prepared with examples and exercises that built upon each other as we progressed. I highly recommend his classes."

"This class helped me return to the workforce after a long absence. Originally a C and Assembly programmer, I was new to iOS, Swift, and Xcode. Mr. Ansari led us through these topics in a clear and efficient manner and also incorporated very helpful and practical info on using Git via challenging exercises and a class project. Mr. Ansari is a knowledgeable and enthusiastic teacher and always takes time to provide assistance to the class. I highly recommend his classes to anyone interested in programming!"

"Aijaz is passionate about what he does and it shows. His breadth of experience and knowledge on the subject, plus his teaching style, made the course both valuable and enjoyable. This far exceeded my expectations and was far more enjoyable than almost all of the training I’ve done to date."

Plans & Pricing

Here are our plans & pricing. Choose the option that works best for you.

One 8-hour session

$ 250 / student
  • Classes will be held at our location
  • Wednesdays from 9:00 AM to 5:PM
  • $350 per student if on weekends

On-site training

$ 275 / student
  • Classes will be held at your workplace
  • Contact me at for more information

Two 4-hour sessions

$ 300 / student
  • Classes will be held at our location
  • Either on Wednesdays or Wed and Thu from 9:00 AM to 1:00 PM
  • $400 per student if on weekends

All classes subject to meeting a minimum number of students requirement of 5.

Register Now

Fill in the form below to register for this class: