Git & GitHub Fundamentals Roadmap — Step-by-step Learning Path
Git commands, branching, pull requests and team collaboration workflows
The Git & GitHub Fundamentals roadmap
- Version Control Fundamentals — beginner
- What Is Version Control? — beginner
- Git vs Other VCS (SVN, Mercurial) — beginner
- Installing & Configuring Git — beginner
- Git Basics — beginner
- Initializing a Repository (git init) — beginner
- The Staging Area (git add) — beginner
- Making Commits (git commit) — beginner
- Viewing History (git log & git diff) — beginner
- Checking Status (git status) — beginner
- gitignore & Tracking Files — beginner
- Working with Branches — beginner
- Creating & Switching Branches — beginner
- Merging Branches — beginner
- Fast-Forward vs Three-Way Merges — beginner
- Deleting & Renaming Branches — beginner
- Undoing Changes & History Management — intermediate
- git checkout vs git switch/restore — intermediate
- Unstaging & Discarding Changes — intermediate
- git reset (Soft, Mixed, Hard) — intermediate
- git revert — intermediate
- Amending Commits — intermediate
- Git Stash — intermediate
- Using the Reflog to Recover Lost Work — intermediate
- Remote Repositories & GitHub Basics — beginner
- Creating a GitHub Account & Repository — beginner
- Adding & Managing Remotes — beginner
- Cloning a Repository — beginner
- Pushing & Pulling Changes — beginner
- Fetch vs Pull — beginner
- Understanding Upstream & Tracking Branches — beginner
- Collaborating with Pull Requests — intermediate
- Forking a Repository — intermediate
- Opening a Pull Request — intermediate
- Writing Good PR Descriptions & Commit Messages — intermediate
- Code Review Etiquette — intermediate
- Requesting Changes & Approving PRs — intermediate
- Draft PRs & PR Templates — intermediate
- Merge Conflicts & Rebasing — intermediate
- Understanding Merge Conflicts — intermediate
- Resolving Conflicts Locally — intermediate
- Rebase vs Merge — intermediate
- Interactive Rebase (Squash, Reorder, Edit) — intermediate
- Cherry-Picking Commits — intermediate
- Resolving Conflicts During a Rebase — intermediate
- Branching Strategies & Team Workflows — intermediate
- Gitflow Workflow — intermediate
- GitHub Flow — intermediate
- Trunk-Based Development — intermediate
- Feature Branch Workflow — intermediate
- Choosing the Right Workflow for a Team — intermediate
- Git Internals — advanced
- Git Objects (Blobs, Trees, Commits) — advanced
- How Git Stores Data (The .git Directory) — advanced
- References, HEAD & the Commit Graph — advanced
- Packfiles & Garbage Collection — advanced
- Plumbing vs Porcelain Commands — advanced
- Advanced Git Techniques — advanced
- git bisect for Finding Bugs — advanced
- Submodules — advanced
- Git Subtree as an Alternative to Submodules — advanced
- Git Worktrees — advanced
- Sparse Checkout & Partial Clones — advanced
- Git Hooks (Client-Side Automation) — advanced
- Git LFS (Large File Storage) — advanced
- GitHub Advanced Features & Collaboration Tools — advanced
- GitHub Issues & Labels — advanced
- GitHub Projects (Boards) — advanced
- Branch Protection Rules — advanced
- CODEOWNERS & Required Reviewers — advanced
- GitHub Actions Basics (CI on Every PR) — advanced
- GitHub Discussions & Wikis — advanced
- Git & GitHub Security Best Practices — advanced
- SSH Keys for Authentication — advanced
- Personal Access Tokens & Fine-Grained Permissions — advanced
- GPG Commit Signing & Verified Commits — advanced
- Two-Factor Authentication — advanced
- Secret Scanning & Preventing Leaked Credentials — advanced
- Dependabot & Automated Dependency Updates — advanced
- Team Collaboration & Open Source Practices — advanced
- Conventional Commits & Commit Message Standards — advanced
- Semantic Versioning & Release Tagging — advanced
- Writing Changelogs — advanced
- Contributing to Open Source Projects — advanced
- Git Etiquette & Team Norms — advanced
- Handling Large Team Repositories at Scale — advanced
- Case Studies & Capstone — advanced
- Case Study: Simulating a Full Team Git Workflow — advanced
- Case Study: Resolving a Complex Multi-Branch Merge Conflict — advanced
- Case Study: Contributing a Real Pull Request to Open Source — advanced
- Case Study: Recovering from a Disastrous History Rewrite — advanced
- Capstone: End-to-End Collaborative Git & GitHub Workflow — advanced