Build Real Skills with Version Control
This program walks you through Git and version control from the ground up. You'll work through actual scenarios, learn to fix real problems, and understand how teams collaborate on code without stepping on each other's toes.
Get Started
What You'll Actually Learn
Six focused modules that take you from basic commits to handling complex team workflows. Each one builds on what came before.
Getting Started Right
Set up Git properly, understand what version control solves, and make your first commits. We cover staging, committing, and viewing history without getting lost in technical jargon.
Branching Without Breaking Things
Learn to work on features separately using branches. You'll practice merging, handle conflicts when they happen, and understand when to create a new branch versus working on an existing one.
Remote Repositories
Connect to GitHub or GitLab, push your work, and pull changes from teammates. We cover authentication, remote tracking, and what happens when someone else pushes before you do.
Undoing Mistakes
Everyone commits the wrong thing eventually. Learn to revert changes, amend commits, reset your branch, and recover from common problems without losing work.
Team Workflows
Understand pull requests, code reviews, and working with protected branches. We simulate real team scenarios where multiple developers work on the same codebase simultaneously.
Advanced Techniques
Dive into rebasing, cherry-picking, stashing, and bisecting. These tools help you maintain clean history and track down exactly when bugs were introduced.
How the Program Flows
Four distinct phases that move from individual work to team collaboration
Foundation Phase
You start with local repositories and basic operations. The goal is to feel comfortable with commits, branches, and viewing history. Everything happens on your machine first, so you can experiment without worrying about affecting anyone else.
Connection Phase
Now you connect to remote repositories and practice pushing and pulling. We introduce scenarios where changes conflict, and you learn to resolve them. This is where version control starts feeling like a team tool.
Collaboration Phase
Work through pull request workflows, participate in code reviews, and manage feature branches with teammates. The exercises simulate actual development teams with multiple people working simultaneously.
Mastery Phase
Focus on advanced operations and maintaining clean project history. You'll practice rebasing, learn when to use different merge strategies, and understand how to find bugs using Git's search capabilities.
Beyond the Core Material
The main curriculum covers everything you need, but we include additional resources that help you go deeper or apply Git to specific situations you'll encounter in real projects.
These aren't required viewing, but they're there when you need them. Most students find them useful when they run into a specific scenario at work or want to understand why Git works a certain way.
- Git internals explained for when you need to troubleshoot unusual problems
- Integration guides for popular IDEs and editors like VS Code and IntelliJ
- Command-line shortcuts and aliases that save time during daily work
- Workflow templates for different team sizes and release strategies
- Practical examples from open source projects showing real collaboration patterns
- Recovery techniques for corrupted repositories and lost commits

