Git & GitHub
Master version control with Git and collaborate effectively on GitHub.
📚Curriculum Overview
What is Git?
Understand the fundamental concepts of Git and why it is an essential tool for modern software development.
Staging & Committing
Master the two-step process at the heart of Git: staging changes and committing them permanently to your project history.
Branching & Merging
Master Git's killer feature — branches. Learn to develop features in isolation and safely bring them back together.
Working with Remotes
Connect your local repository to GitHub and learn to push, pull, fetch, and clone — the foundation of team collaboration.
Undoing Changes
Learn to confidently undo mistakes in Git — from unstaging a file to recovering lost commits — without breaking anything.
GitHub & Pull Requests
Learn how teams collaborate on GitHub — forking, opening Pull Requests, reviewing code, and merging safely.
Git Rebase & Advanced History
Master rebasing to keep a clean linear history, squash commits, and understand when rebase beats merge.
Git Workflows & Best Practices
Understand professional Git workflows used by real teams — GitFlow, GitHub Flow, and Trunk-Based Development.
Git Stash, Tags & Advanced Tips
Master Git's utility toolkit — stashing work in progress, tagging releases, using bisect to find bugs, and searching history.
🏆Capstone Project
Build a Team Collaboration Repository
Set up a professional GitHub repository from scratch: configure branch protection, write a CONTRIBUTING.md, implement GitHub Flow with Pull Request templates, set up GitHub Actions for CI, tag your first release, and simulate a complete feature development and hotfix cycle with at least 2 collaborators.
Complete all lessons in this topic to gain full access to Project Resources.