Tools
Git Mastery
22-module Git course taught by seven AlgoInsight founders in their own voices - from "what is version control" through merge conflicts, rebasing, the object database, hooks, and production workflows at scale.
Git Mastery
This isn't a command cheat sheet. It's a 22-module Git curriculum built around how senior engineers actually use Git on real teams - language fundamentals plus the depth most platforms never reach: the object database, how the index really works, the wire protocol, garbage collection, and the production workflows that survive long-running release branches under deadline.
You'll work through the fundamentals (init, clone, staging, commits, .gitignore), the everyday tools (history, undo, branching, merging, rebasing, remotes, tags), team and collaboration patterns (Gitflow, GitHub Flow, trunk-based development, pull requests and code review, cherry-picking), and the depth that separates mid from senior engineers: Git internals, submodules, performance at large-repo scale, hooks, commit hygiene, production workflows, repository governance, and the data-model deep dive - closing with an advanced power-user module and a capstone synthesis topic.
Every module and every topic in this course is free. The course is written ensemble-style with each topic carrying a named AlgoInsight-founder byline and a first-person story from production work at Google, Meta, Amazon, Microsoft, Apple, Netflix, Stripe, and more.
What you will learn
- Git from "what is version control" through to the object database and wire protocol
- The everyday commands engineers reach for daily — staging, commits, branching, merging, rebasing
- Real collaboration patterns — Gitflow, GitHub Flow, trunk-based, pull requests, code review
- Conflict resolution at depth — three-way merges, rebase conflicts, cherry-pick conflicts
- Git internals — objects, refs, the index, packfiles, garbage collection, the wire protocol
- Production-grade workflows — release branches, hotfix patterns, rollback, hooks, governance
Course outline
Module 1: Introduction to Git
Introduction to Git — 7 topics.
- What is Git? 7 min read
- Version Control Basics 7 min read
- Distributed vs Centralized VCS 7 min read Pro lesson
- History of Git 8 min read Pro lesson
- Migrating from Other VCS 9 min read Pro lesson
- Course Setup 9 min read Pro lesson
- Git Configuration 10 min read Pro lesson
Module 2: Git Basics
Git Basics — 8 topics.
- Creating a Repository (git init) 7 min read
- Cloning a Repository (git clone) 8 min read Pro lesson
- The Staging Area 10 min read Pro lesson
- Adding Files to the Staging Area (git add) 10 min read Pro lesson
- Committing Changes (git commit) 10 min read Pro lesson
- Writing Good Commit Messages 11 min read Pro lesson
- Checking Status (git status) 9 min read Pro lesson
- Ignoring Files (.gitignore) 11 min read
Module 3: Working with Files
Working with Files — 4 topics.
- Removing Files (git rm) 8 min read
- Renaming Files (git mv) 8 min read Pro lesson
- File Permissions 8 min read Pro lesson
- Tracking Binary Files 9 min read Pro lesson
Module 4: Viewing History
Viewing History — 6 topics.
- git show 8 min read
- git log 9 min read Pro lesson
- git diff 9 min read Pro lesson
- git blame 8 min read Pro lesson
- Searching History 9 min read Pro lesson
- git bisect 9 min read Pro lesson
Module 5: Undoing Changes
Undoing Changes — 8 topics.
- Undoing Changes Overview 7 min read
- git checkout (files) 7 min read Pro lesson
- git restore 8 min read Pro lesson
- git reset 8 min read Pro lesson
- Reset Modes (soft, mixed, hard) 9 min read Pro lesson
- git revert 9 min read Pro lesson
- git clean 8 min read Pro lesson
- git stash 9 min read Pro lesson
Module 6: Branching
Branching — 9 topics.
- Branching Basics 8 min read
- Creating Branches 8 min read Pro lesson
- git switch 8 min read Pro lesson
- git checkout (branches) 7 min read Pro lesson
- Deleting Branches 8 min read Pro lesson
- Renaming Branches 8 min read Pro lesson
- Listing Branches 9 min read Pro lesson
- The HEAD Pointer 9 min read Pro lesson
- Detached HEAD State 9 min read Pro lesson
Module 7: Merging
Merging — 8 topics.
- Merging Overview 8 min read
- Fast Forward Merges 7 min read Pro lesson
- Three Way Merges 7 min read Pro lesson
- Merge Strategies 7 min read Pro lesson
- Merge Conflicts 8 min read Pro lesson
- Resolving Conflicts 8 min read Pro lesson
- Merge Commit Messages 7 min read Pro lesson
- Aborting and Undoing Merges 8 min read Pro lesson
Module 8: Rebasing
Rebasing — 9 topics.
- What is Rebasing? 8 min read
- Basic Rebase 7 min read Pro lesson
- Interactive Rebase 9 min read Pro lesson
- When Rewriting History is Safe 8 min read Pro lesson
- Rebase Conflicts 8 min read Pro lesson
- git rebase --onto 8 min read Pro lesson
- Squashing Commits 8 min read Pro lesson
- Rewording Commits 7 min read Pro lesson
- Reordering and Dropping Commits 8 min read Pro lesson
Module 9: Remote Repositories
Remote Repositories — 8 topics.
- Remote Repositories Overview 8 min read
- Git Remote 7 min read Pro lesson
- Git Fetch 7 min read Pro lesson
- Git Pull 8 min read Pro lesson
- Git Push 8 min read Pro lesson
- Upstream Tracking 7 min read Pro lesson
- Remote Tracking Branches 7 min read Pro lesson
- Working with Multiple Remotes 6 min read Pro lesson
Module 10: Tagging
Tagging — 8 topics.
- What Are Tags 6 min read
- Lightweight vs Annotated Tags 7 min read Pro lesson
- Creating Tags 6 min read Pro lesson
- Listing and Viewing Tags 6 min read Pro lesson
- Deleting Tags 6 min read Pro lesson
- Pushing Tags to Remote 7 min read Pro lesson
- Signed Tags 8 min read Pro lesson
- Tags in Release Workflows 7 min read Pro lesson
Module 11: Git Workflows
Git Workflows — 8 topics.
- Git Workflows Overview 7 min read
- Centralized Workflow 6 min read Pro lesson
- Feature Branch Workflow 7 min read Pro lesson
- Gitflow 7 min read Pro lesson
- GitHub Flow 7 min read Pro lesson
- Trunk Based Development 7 min read Pro lesson
- Forking Workflow 6 min read Pro lesson
- Choosing a Workflow 7 min read Pro lesson
Module 12: Pull Requests and Code Review
Pull Requests and Code Review — 8 topics.
- What is A Pull Request 6 min read
- Creating a Pull Request 7 min read Pro lesson
- Code Review Fundamentals 6 min read Pro lesson
- Reviewing Others Code 7 min read Pro lesson
- Responding to Review Comments 7 min read Pro lesson
- Merging a Pull Request 7 min read Pro lesson
- PR Templates and Conventions 7 min read Pro lesson
- Stacked Pull Requests 7 min read Pro lesson
Module 13: Cherry-Picking
Cherry-Picking — 8 topics.
- Cherry Pick Overview 7 min read
- Basic Cherry Pick 7 min read Pro lesson
- Cherry Pick with Conflicts 7 min read Pro lesson
- Cherry Picking Multiple Commits 7 min read Pro lesson
- Cherry Pick a Range 6 min read Pro lesson
- Cherry Pick from Different Branch 6 min read Pro lesson
- Cherry Pick Best Practices 6 min read Pro lesson
- Cherry Pick vs Merge vs Rebase 7 min read Pro lesson
Module 14: Git Internals
Git Internals — 9 topics.
- Internals Overview 6 min read
- The Object Database 7 min read Pro lesson
- Blobs 6 min read Pro lesson
- Commit Objects 6 min read Pro lesson
- Refs 6 min read Pro lesson
- Tree Objects 7 min read Pro lesson
- Garbage Collection 8 min read Pro lesson
- Reflog 8 min read Pro lesson
- Recovering Lost Commits 9 min read Pro lesson
Module 15: Submodules and Subtrees
Submodules and Subtrees — 8 topics.
- Submodules Overview 7 min read
- Adding a Submodule 6 min read Pro lesson
- Cloning with Submodules 6 min read Pro lesson
- Updating Submodules 7 min read Pro lesson
- Removing Submodules 6 min read Pro lesson
- Subtrees Overview 7 min read Pro lesson
- Working with Subtrees 7 min read Pro lesson
- Submodules vs Subtrees 7 min read Pro lesson
Module 16: Performance and Large Repositories
Performance and Large Repositories — 8 topics.
- Maintenance Overview 6 min read
- Git Maintenance Command 6 min read Pro lesson
- Git LFS Overview 6 min read Pro lesson
- Working with Large Files 7 min read Pro lesson
- Partial Clone 6 min read Pro lesson
- Sparse Checkout 7 min read Pro lesson
- Shallow Clones 7 min read Pro lesson
- Performance Diagnostics 7 min read Pro lesson
Module 17: Git Hooks
Git Hooks — 8 topics.
- Hooks Overview 7 min read
- pre-push Hook 7 min read Pro lesson
- pre-commit Hook 7 min read Pro lesson
- commit-msg Hook 6 min read Pro lesson
- Handling Secrets 7 min read Pro lesson
- Server Side Hooks 8 min read Pro lesson
- Hook Frameworks 7 min read Pro lesson
- Custom Hook Patterns 7 min read Pro lesson
Module 18: Commit Hygiene
Commit Hygiene — 8 topics.
- Commit Message Conventions 7 min read
- Subject Lines 7 min read Pro lesson
- Commit Body 7 min read Pro lesson
- Atomic Commits 8 min read Pro lesson
- Conventional Commits 8 min read Pro lesson
- Commit Signing 8 min read Pro lesson
- Trailers and Metadata 8 min read Pro lesson
- Hygiene at Team Scale 8 min read Pro lesson
Module 19: Production Workflows
Production Workflows — 8 topics.
- Production Workflows Overview 7 min read
- Hotfix Patterns 7 min read Pro lesson
- Rollback Strategies 7 min read Pro lesson
- Tag Based Releases 7 min read Pro lesson
- Release Branches 7 min read Pro lesson
- Deployment Coordination 7 min read Pro lesson
- Incident Response with Git 7 min read Pro lesson
- Production Branch Management 7 min read Pro lesson
Module 20: Repository Governance
Repository Governance — 8 topics.
- Repository Governance Overview 7 min read
- Branch Protection Policies 7 min read Pro lesson
- Code Owners and Review Routing 6 min read Pro lesson
- Access Control Patterns 7 min read Pro lesson
- Audit and Compliance 7 min read Pro lesson
- Multi Repository Coordination 6 min read Pro lesson
- Open Source Workflows 7 min read Pro lesson
- Long Term Repository Maintenance 9 min read Pro lesson
Module 21: Git Internals Deep Dive
Git Internals Deep Dive — 8 topics.
- Git's Data Model 7 min read
- The Object Database 7 min read Pro lesson
- Refs and the Ref Database 6 min read Pro lesson
- The Index 7 min read Pro lesson
- Packfiles and Object Storage 7 min read Pro lesson
- Plumbing vs Porcelain 7 min read Pro lesson
- The Git Wire Protocol 6 min read Pro lesson
- Garbage Collection and Reachability 7 min read Pro lesson
Module 22: Advanced Git for Power Users
Advanced Git for Power Users — 8 topics.
- Worktrees 6 min read
- Sparse Checkout and Partial Clone 6 min read Pro lesson
- Git LFS 7 min read Pro lesson
- Custom Git Commands and Aliases 6 min read Pro lesson
- Git as a Scripting Tool 7 min read Pro lesson
- Performance and Large Repositories 6 min read Pro lesson
- Beyond Git 7 min read Pro lesson
- Course Capstone: Putting It All Together 8 min read Pro lesson