Skip to content

About

Practical Git and version control guide covering branching models, interactive rebasing, merge conflict resolution, and GitHub Actions CI.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

Β 

History

125 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸŽ“ Git & GitHub β€” Master Coursework

From Absolute Beginner to Enterprise DevOps Mastery

Git Version GitHub Platform Curriculum Level License: MIT PRs Welcome

A university-grade, production-tested curriculum covering version control internals, DAG commit graphs, advanced collaboration workflows, automated CI/CD pipelines, GitOps, secret scanning, and enterprise engineering standards.

πŸ“š Explore Modules β€’ πŸ—ΊοΈ 6-Month Roadmap β€’ πŸ“‹ Cheat Sheet β€’ πŸ“˜ Glossary β€’ πŸ† Capstone Project β€’ πŸš€ Getting Started


πŸ“‹ Course Overview

This repository houses a comprehensive, 30-module curriculum engineered to transition software engineers, DevOps practitioners, and computer science students from basic command-line usage to deep architectural mastery of Git and the GitHub ecosystem.

Key Highlights

Feature Details
Total Modules 30 self-contained modules with theory, CLI commands, and exercises
Progressive Levels 🟒 Beginner β†’ 🟑 Intermediate β†’ πŸ”΅ Advanced β†’ 🟣 GitHub CI/CD β†’ ⚫ DevOps Mastery
Paced Duration ~6 Months structured learning (or self-paced accelerated track)
Visual Architecture Over 200+ Mermaid diagrams (sequence diagrams, flowcharts, state machines, and DAGs)
Deep Internals Content-addressable storage, SHA hashing, object storage formats (blob, tree, commit, tag), and plumbing commands
Enterprise Practices Branch Protection, CODEOWNERS, GitHub Actions CI/CD matrix builds, Dependabot, GitOps, and Monorepo scaling
Capstone Project Full-Stack collaborative repository build with a rigorous 100-point rubric

πŸ—ΊοΈ 6-Month Learning Roadmap

flowchart TD
    subgraph PhaseA["🟒 Phase A: Git Foundations (Month 1)"]
        M01["01: Intro to VCS"] --> M02["02: Install & Config"]
        M02 --> M03["03: First Repo"]
        M03 --> M04["04: Staging & History"]
        M04 --> M05["05: Branching Basics"]
        M05 --> M06["06: Merging & Conflicts"]
    end

    subgraph PhaseB["🟑 Phase B: Intermediate Git & Collaboration (Month 2)"]
        M07["07: Remote Repos & GitHub"] --> M08["08: Push, Pull & Fetch"]
        M08 --> M09["09: Rebasing & Cherry-Pick"]
        M09 --> M10["10: Stashing & Cleaning"]
        M10 --> M11["11: Tags & SemVer"]
        M11 --> M12["12: Diff, Blame & Bisect"]
    end

    subgraph PhaseC["πŸ”΅ Phase C: Advanced Git & Internals (Month 3)"]
        M13["13: Objects, SHA & DAG"] --> M14["14: Reset, Revert & Reflog"]
        M14 --> M15["15: Interactive Rebase"]
        M15 --> M16["16: Hooks & Automation"]
        M16 --> M17["17: Submodules & Subtrees"]
        M17 --> M18["18: Advanced Merge Strategies"]
    end

    subgraph PhaseD["🟣 Phase D: GitHub Deep-Dive & CI/CD (Month 4)"]
        M19["19: Issues & Project Boards"] --> M20["20: PRs & Code Reviews"]
        M20 --> M21["21: Branch Protection & CODEOWNERS"]
        M21 --> M22["22: Actions CI/CD Fundamentals"]
        M22 --> M23["23: Actions Advanced Workflows"]
        M23 --> M24["24: Security & Dependabot"]
    end

    subgraph PhaseE["⚫ Phase E: DevOps & Capstone (Months 5 & 6)"]
        M25["25: Git Flow & Branching"] --> M26["26: Open-Source Guide"]
        M26 --> M27["27: Monorepos & Scaling"]
        M27 --> M28["28: Repo Best Practices"]
        M28 --> M29["29: Git in Production & GitOps"]
        M29 --> M30["30: Capstone Project πŸ†"]
    end

    PhaseA --> PhaseB --> PhaseC --> PhaseD --> PhaseE

    style PhaseA fill:#e8f5e9,stroke:#4caf50,stroke-width:2px
    style PhaseB fill:#fffde7,stroke:#fbc02d,stroke-width:2px
    style PhaseC fill:#e3f2fd,stroke:#1e88e5,stroke-width:2px
    style PhaseD fill:#f3e5f5,stroke:#8e24aa,stroke-width:2px
    style PhaseE fill:#eceff1,stroke:#37474f,stroke-width:2px
    style M30 fill:#ffd54f,stroke:#ff8f00,stroke-width:3px
Loading

πŸ“š Curriculum Index

🟒 Phase A β€” Git Foundations (Beginner)

Master the foundational mental models, the 3 areas of Git, local branch operations, and conflict resolution.

# Module Core Topics Est. Time Status
01 Introduction to Version Control VCS Evolution, Centralized vs Distributed, Snapshot model, 3 Areas of Git 2.0 hrs Ready
02 Git Installation & Configuration Multi-OS Setup, Config Hierarchy, SSH Authentication, GPG Signing 1.5 hrs Ready
03 Your First Repository git init, .git Anatomy, Object Directory, git clone Mechanics 2.0 hrs Ready
04 Staging, Committing & History Index Mechanics, Atomic Commits, git log Filtering, .gitignore Rules 3.0 hrs Ready
05 Branching Basics Pointer Mechanics, HEAD Dereferencing, switch vs checkout, Detached HEAD 2.5 hrs Ready
06 Merging & Conflict Resolution Fast-Forward, 3-Way Merge, Conflict Markers, git mergetool Integration 3.0 hrs Ready

🟑 Phase B β€” Intermediate Git & Collaboration

Learn remote collaboration patterns, linear rebasing, stash internals, and automated debugging with bisect.

# Module Core Topics Est. Time Status
07 Remote Repositories & GitHub Basics Remotes, origin Architecture, HTTPS vs SSH, GitHub Web UI Tour 3.0 hrs Ready
08 Collaboration β€” Push, Pull, Fetch Upstream Tracking, git fetch vs git pull, Fast-Forward Pull Strategies 3.0 hrs Ready
09 Rebasing & Cherry-Picking Linear History, Base Commits, Golden Rule of Rebasing, Cherry-Picking 3.0 hrs Ready
10 Stashing & Cleaning Stash Stack LIFO Mechanics, Untracked Stashes, Git Worktrees, git clean 2.0 hrs Ready
11 Tags, Releases & Semantic Versioning Lightweight vs Annotated Tags, Semantic Versioning (MAJOR.MINOR.PATCH), Releases 2.5 hrs Ready
12 Git Diff, Blame & Bisect Revision Comparison, Line History with blame, Binary Search Debugging (bisect) 2.5 hrs Ready

πŸ”΅ Phase C β€” Advanced Git & Internals

Unpack Git's low-level engine: content-addressable storage, DAG graphs, history rewriting, and hooks.

# Module Core Topics Est. Time Status
13 Git Internals β€” Objects, SHA, DAG Blobs, Trees, Commits, Tags, SHA-1 Hashing, Plumbing Commands (cat-file) 4.0 hrs Ready
14 Reset, Revert & Reflog Soft vs Mixed vs Hard Resets, Safe History Reverts, Disaster Recovery via Reflog 3.0 hrs Ready
15 Interactive Rebase & History Rewriting Squash, Fixup, Reorder, Drop, Edit Commits, Splitting Commits, Filter-Repo 3.0 hrs Ready
16 Git Hooks & Automation Client vs Server Hooks, Husky Integration, lint-staged, Commitlint Standards 3.0 hrs Ready
17 Submodules & Subtrees Nested Repositories, Submodule Pointers, Updating & Cloning, Git Subtrees 3.0 hrs Ready
18 Advanced Merge Strategies Recursive/Ort Strategies, Ours vs Theirs, Octopus Merges, git rerere 2.5 hrs Ready

🟣 Phase D β€” GitHub Deep-Dive & CI/CD

Professional GitHub collaboration, branch governance, GitHub Actions automation, and security scanning.

# Module Core Topics Est. Time Status
19 GitHub Issues, Projects & Wikis Issue Templates, Milestones, Project Kanban Boards, Team Collaboration 3.0 hrs Ready
20 Pull Requests & Code Reviews PR Lifecycle, Review Etiquette, Inline Suggestions, Draft PRs, Merge Types 3.0 hrs Ready
21 Branch Protection & CODEOWNERS Required Reviews, Status Checks, Linear History Enforcement, CODEOWNERS Rules 2.5 hrs Ready
22 GitHub Actions β€” CI/CD Fundamentals Workflows, Runners, Events, Jobs, Steps, Secrets, Automated Testing Pipeline 4.0 hrs Ready
23 GitHub Actions β€” Advanced Workflows Matrix Strategies, Dependency Caching, Reusable Workflows, Composite Actions 4.0 hrs Ready
24 GitHub Security β€” Dependabot & Secrets Secret Scanning, Push Protection, Dependabot Vulnerability Alerts, CodeQL 3.0 hrs Ready

⚫ Phase E β€” Enterprise DevOps, Scaling & Capstone

Deploy industry branching models, open-source standards, Monorepos, GitOps pipelines, and the final Capstone.

# Module Core Topics Est. Time Status
25 Branching Strategies & Git Flow Git Flow, GitHub Flow, GitLab Flow, Trunk-Based Development Comparison 3.0 hrs Ready
26 Open-Source Contribution Guide Forking, Upstream Sync, Conventional Commits, DCO / CLA Sign-Offs 3.0 hrs Ready
27 Monorepos & Scaling Git Monorepos vs Polyrepos, Git LFS, Sparse-Checkout, Partial Clones, Scalar 3.0 hrs Ready
28 Repository Best Practices README Standards, LICENSE Choice, CONTRIBUTING, SECURITY.md, Hygiene 2.5 hrs Ready
29 Git in Production β€” DevOps Integration GitOps Fundamentals (ArgoCD/Flux), Deployment Tags, Release Pipelines 4.0 hrs Ready
30 Capstone Project β€” Task Manager End-to-End Enterprise Repository Build & Audit (100-Point Grading Rubric) 8–12 hrs Ready

🧰 Reference Toolkit & Resources

Document Description
πŸ“‹ Master Cheat Sheet Comprehensive command reference categorized from setup to advanced plumbing
πŸ“˜ A–Z Glossary Concise definitions of 60+ fundamental and enterprise Git/GitHub concepts

πŸš€ Getting Started

1. Clone the Coursework

git clone https://github.com/<your-username>/Git_Coursework.git
cd Git_Coursework

2. Follow the Recommended Study Methodology

flowchart LR
    A["1. Read Module Theory"] --> B["2. Run Every Command"]
    B --> C["3. Solve Exercises"]
    C --> D["4. Inspect Git Internals"]
    D --> E["5. Proceed to Next Module"]
Loading
  1. Sequential Order: Start with Module 01 and progress sequentially. Each module assumes knowledge of preceding topics.
  2. Hands-On Practice: Do not simply read the documentation. Create a test repository on your local machine and execute every single command.
  3. Inspect the Internals: When exploring Phase C, use plumbing commands (git cat-file -p, git ls-tree) to verify object storage on your own filesystem.
  4. Complete the Capstone: Build the Module 30 Capstone Project to showcase your complete Git & GitHub proficiency on your resume or portfolio.

πŸ† Capstone Project Highlights

Module 30 challenges you to build a multi-package, full-stack application repository implementing the complete software development lifecycle:

  • Repository Hygiene: Standardized .gitignore, CONTRIBUTING.md, issue & PR templates.
  • Branching Architecture: Enforced Git Flow or Trunk-Based development with branch protection rules.
  • Git Hooks: Pre-commit linting and commit-message validation with Husky.
  • CI/CD Automation: GitHub Actions workflow testing matrix, caching dependencies, and automating container builds.
  • Disaster Recovery: Simulated merge conflicts, history rebasing, and reflog bug fixes.

πŸ”— Official Documentation References


🀝 Contributing

Contributions, feedback, and enhancements are always welcome!

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes following Conventional Commits (git commit -m 'feat: add interactive diagram for rebase')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

πŸ“„ License

This coursework is open-source and released under the MIT License.

Built with ❀️ for software engineers and DevOps learners worldwide.
If you find this coursework helpful, please consider giving it a ⭐ on GitHub!

About

Practical Git and version control guide covering branching models, interactive rebasing, merge conflict resolution, and GitHub Actions CI.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors