← All courses

Git

The version control system behind almost every modern codebase — how to actually understand what it's doing, not just memorize commands.

gitversion-controlprogrammingbeginner
39decks
55main cards
181practice cards
21%with images
v1.0.0version

Card type mix

What's covered

  1. What Version Control Actually Solves
  2. Installing and Setting Up Git
  3. Starting a Repository
  4. The Three Areas: Working, Staged, Committed
  5. Tracking and Staging Changes
  6. Committing Snapshots
  7. Reading Your History
  8. Comparing Changes
  9. Unstaging and Discarding Changes
  10. Fixing Your Last Commit
  11. Reverting a Commit Safely
  12. Resetting to an Earlier Point
  13. What a Branch Really Is
  14. Creating and Switching Branches
  15. Merging Branches Together
  16. Resolving a Merge Conflict
  17. Rebasing Instead of Merging
  18. Cleaning Up History With Interactive Rebase
  19. Understanding Remotes
  20. Pushing and Pulling
  21. Fetch vs. Pull
  22. Tracking Branches
  23. Forks and Pull Requests
  24. Writing Reviewable Commits
  25. Common Team Branching Strategies
  26. .gitignore and What Not to Track
  27. Removing Untracked Files
  28. Searching Commit History
  29. Blaming a Line, Fairly
  30. Binary-Searching for a Bug
  31. Tagging a Release
  32. Stashing Work in Progress
  33. Cherry-Picking a Single Commit
  34. Rewriting History Without Breaking Everyone
  35. Recovering "Lost" Commits
  36. Common Git Mistakes and Their Fixes
  37. Submodules, Briefly
  38. Handling Large Files With Git LFS
  39. How Git Actually Stores Your Data

Example cards

select blank

Version control tracks ___ to your files.

  • changes
  • nothing
  • only names
  • only size
select blank

Every Git ___ holds the full project history.

  • clone
  • branch
  • tag
  • remote

Latest: Initial release — 39 decks, 291 cards, each pack with a preview card teaching the concept before its graded main card and practice cards.