Skip to content

Git & GitHub

What Is Git?

Git is the world's most popular version control system β€” a free tool that tracks every change to every file in your project, forever. Think of it as the ultimate Ctrl+Z β€” across all files, with full history of who did what and when.

GitHub is a website where you store and share Git repositories online. Git is the engine, GitHub is the garage.

πŸ’‘ You've been using Git already β€” every time you run git push to deploy your websites! This section teaches you the "why" behind what you've been doing.


πŸ—ΊοΈ Learning Path β€” 8 Modules

# Module What You'll Learn Type
1 Why Version Control + What is Git? The file chaos problem, history, what Git is Analogy + theory
2 The Git Mental Model 3 areas, commits, snapshots, timeline Diagrams + theory
3 Your First Repository init, add, commit, status, log, diff πŸ”§ Hands-on
4 What is GitHub? Git vs GitHub, local vs remote, GitHub tour Analogy + walkthrough
5 Local ↔ Remote push, pull, clone, authentication πŸ”§ Hands-on
6 Branches & Merging Parallel work, merge, conflicts πŸ”§ Hands-on
7 Pull Requests & Collaboration PRs, reviews, GitHub Flow πŸ”§ Hands-on
8 Real-World Git .gitignore, README, Actions, YOUR deploy flow Theory + real examples
πŸ“– FAQ All questions asked during learning sessions Reference

🎯 The Big Picture

graph LR
    subgraph foundation["Foundation (Modules 1-2)"]
        M1["πŸ“– Why Version Control?"]
        M2["🧠 Git Mental Model"]
    end

    subgraph local["Working Locally (Module 3)"]
        M3["πŸ”§ First Repository"]
    end

    subgraph remote["Going Online (Modules 4-5)"]
        M4["🌐 What is GitHub?"]
        M5["πŸ”§ Local ↔ Remote"]
    end

    subgraph collab["Collaboration (Modules 6-7)"]
        M6["πŸ”§ Branches & Merging"]
        M7["πŸ”§ Pull Requests"]
    end

    subgraph real["Real World (Module 8)"]
        M8["πŸ—οΈ Your Workflow Decoded"]
    end

    M1 --> M2 --> M3 --> M4 --> M5 --> M6 --> M7 --> M8

    style foundation fill:#1a1a2e,stroke:#66ffff,color:#fff
    style local fill:#1a1a2e,stroke:#ff66ff,color:#fff
    style remote fill:#1a1a2e,stroke:#66ff66,color:#fff
    style collab fill:#1a1a2e,stroke:#ffff66,color:#fff
    style real fill:#1a1a2e,stroke:#ff8866,color:#fff

πŸ”‘ Key Git Vocabulary (Preview)

You'll learn these throughout the modules, but here's a quick preview:

Term Plain English
Repository (repo) A project folder that Git watches
Commit A saved snapshot of your project
Branch A parallel timeline for experiments
Merge Combining branches together
Remote A copy of your repo on GitHub
Push Send your changes to GitHub
Pull Get changes from GitHub
Clone Copy someone's repo to your machine
Pull Request (PR) Ask to merge your changes into a project