Git for Geeks: Quick Git Training for Developers

Learn the core features of Git in less time for experienced software engineers new to Git

Git for Geeks

This course is designed to cut academic theory to just the key concepts and focus on basics tasks in Git in order to be productive quickly. Students can expect to learn the all the main features of Git in just two hours.

New! Closed captions throughout the course!

Course Outline

Course Introduction provides a welcome to this course with a few suggestions on how to get the most out of it. After that, we cover the minimum theory before getting our hands dirty with Git in the Core Concepts section.

Quick Installation provides an overview on the installation process for all tools needed for this course. A more detailed set of instructions are available in the Bonus section.

In The Basics, we walk through all the commands needed to start a new project managed by Git (or enable Git for an existing project) all the way through making commits, including common file operations like moving and deleting files. We also cover how to exclude the wrong files from accidentally being committed and how to review your repository’s history.

We then go a bit deeper in the Advanced section when we cover comparing changes, branching and merging (including merge conflict resolution), tagging milestones, saving temporary work, and even a bit of time travel.

Finally, Going Remote covers publishing the locally created repository (previous sections) on GitHub and BitBucket. We cover the main concepts related to working with any remote Git repositories and compare the differences between the two most popular Git hosting services.

After the main part of the course, this course offers several bonus sections that explore some topics in more detail for those that like more information.

Course Features

Presentations provide audio/video training of conceptual ideas. Since few like slide-ware presentations, slide-presentations are kept to a minimum.

Screencasts provide a video of the instructor’s computer system with any actions, commands, or screens displayed and narrated. Excluding bonus lectures, this course offers about 2 hours of screencast videos.

Several attachments throughout the course provide supplemental information, illustrations, or other reference material.

Chapter 1 : Introduction

  • Course Introduction
  • Audience and Approach
  • Going Command Line

Chapter 2 : Core Concepts

  • Core Concepts Overview
  • What is Git?
  • What is a Git Repository?
  • How Commits Work

Chapter 3 : Quick Installation

  • Quick Installation Overview
  • Quick Install and Setup on Windows
  • Installation Notes for Windows
  • Quick Install and Setup on Mac OS X
  • Installation Notes for Mac OS X

Chapter 4 : The Basics: Foundations In Git

  • The Basics Overview
  • Starting with a Empty Repository (git init)
  • Git States / Basic Workflow
  • The First Commit and the Basic Local Workflow (git add / git commit)
  • Discover the Git Repository
  • Starting with an Existing Project (git init)
  • Going Deeper with Commits and Messages
  • Commit Log and Showing Commit Details
  • Combining Steps with Express Commits
  • Backing Out Changes in Stage and the Working Directory
  • Git History and Creating Custom Git Commands with Aliases
  • Renaming and Deleting Files within Git
  • Making Changes to Files Outside Git
  • Excluding Unwanted Files from Git


Chapter 5 : Advanced: Going Deeper with Git

  • Advanced Overview
  • Comparing Changes (git diff / difftool)
  • What are Branches
  • Special Markers and HEAD
  • Branching and Simple Merging (Easy Paths)
  • Manual Merges and Conflict Resolution
  • Marking Important Milestones with Tagging
  • Saving Working in Progress with Stashing
  • Repository Time Travel with Reset and Reflog (Undo Bad Commits)

Chapter 6 : Going Remote with GitHub and BitBucket

  • Going Remote Overview
  • What are Remote Repositories
  • What is BitBucket?
  • Sign up for BitBucket
  • Remote Repository Creation
  • Establish Relationship Between Local and Remote Repositories
  • Updating Remote Repositories (git push)
  • Removing the Remote Repository
  • Comparing Services: GitHub vs BitBucket
  • What is GitHub?
  • Working with GitHub
  • Cloning the Repository (git clone)
  • Update without Merge: Fetching Updates (git fetch)

Chapter 8 :Bonus: Background

  • Background Overview
  • About the Instructor
  • A Brief History of Git
  • Comparing Source Control Tools

Chapter 9 : Bonus: Complete Windows Installation

  • Installation Overview
  • Git for Windows Installation
  • Git for Windows Settings and Tweaks
  • Gitting Help
  • Minimal Git Configuration
  • Notepad++ Installation
  • Notepad++ Git Integration
  • P4Merge for Windows Installation
  • P4Merge Git Integration

Chapter 10 : Bonus: Complete Mac OS X Installation

  • Mac OS X Installation Overview
  • Apple Git Installation
  • Gitting Help
  • Minimal Configuration
  • TextMate 2 Installation
  • TextMate 2 Configuration
  • TextMate 2 Git Integration
  • P4Merge for Mac OS X Installation
  • P4Merge Git Integration
  • Mac Git Prompt: Make Your Prompt Like Mine

Jason Taylor


Jason has over 20 years of software experience and over 5 years working with Git, GitHub, and related tools.

Free Courses

Duis egestas aliquet aliquet. Maecenas erat eros, fringilla et leo eget, viverra pretium nulla. Quisque sed augue tincidunt, posuere dui tempor.

Premium Courses

Duis egestas aliquet aliquet. Maecenas erat eros, fringilla et leo eget, viverra pretium nulla. Quisque sed augue tincidunt, posuere dui tempor.