Plain-language Git + Git Bash for game developers (and everyone else).
A hands-on guide and glossary that assumes nothing, re-explains every technical word every time it appears, and never expects you to remember a definition from three pages ago. Built so that even complete beginners can start using Git with confidence — and keep this around as a lookup reference forever after.
| You want... | Open... |
|---|---|
| 📖 Everything in one document | FULL-GUIDE.md |
| 🍱 Bite-size parts (each stands alone) | the part list below |
| 🖨️ A printable cheat sheet | cheat-sheet.html — open in a browser, press Ctrl+P (or the plain-markdown cheat-sheet.md) |
- Every technical word gets re-explained, every time it appears. You will never need to remember a definition from three pages ago. If a term shows up, its meaning is right there next to it.
- You don't have to read in order. Jump to whatever you need. Every part stands on its own.
- You are not supposed to memorize any of this. Professional developers look this stuff up every single day. Looking things up is the skill. That's what the Glossary and Cheat sheet are for.
- You can't break anything by looking. Several commands only show you information and never change anything:
pwd,ls,git status,git log,git diff. When in doubt, look first. The guide always warns clearly before any command that can destroy work. - "Try it" blocks are meant to be typed. Reading about Git doesn't build confidence — typing does. Everything hands-on happens in a throwaway practice folder, so there's zero risk to your real projects.
- Reading conventions: lines starting with
$are things you type (don't type the$); text after a#is a comment the terminal ignores, so examples are safe to copy-paste whole.
| # | Part | What's inside |
|---|---|---|
| 0 | What even is Git Bash? | Git vs Bash vs terminal vs GitHub, reading the screen |
| 1 | Terminal survival skills | The keys that get you un-stuck (q, Ctrl+C, escaping Vim...) |
| 2 | Moving around: Bash basics | pwd, ls, cd, mkdir, files — with a hands-on warm-up |
| 3 | How Git thinks | Save points, the three zones, timelines — the 5-minute mental model |
| 4 | One-time setup | Name/email, main, editor, the line-endings warning |
| 5 | The everyday loop | status → add → commit, plus diff and log |
| 6 | Branches: parallel timelines | switch, merge, and conflicts without fear |
| 7 | GitHub and remotes | clone, push, pull, pull requests, team rhythm |
| 8 | Undo and rescue | The "oh no" section — bookmark this one |
| 9 | Game dev corner | .gitignore for Godot / Unity / Unreal, Git LFS, team etiquette |
| 10 | Error messages, translated | What Git's scary messages actually mean |
| 11 | Glossary A–Z | Every term, each entry self-contained |
| — | Cheat sheet | Everything daily on one printable page |
git status never hurts, q quits, Ctrl+C cancels, and committed work is almost never truly lost. Commit small and often — every save point is a place future-you can reload. The rest is looking things up, which is not cheating; it's the job.
Learning Git to make games? Six Small Worlds is a companion classroom repo of small game tutorials — a good place to practice the loop you learn here on real projects.
CC0 1.0 (public domain) — this is all common knowledge about free tools, so it belongs to everyone. Copy it, translate it, hand it to your students, remix it into your own course materials. No permission or credit needed (though a link back is always appreciated).
Maintenance note: FULL-GUIDE.md is generated from the files in parts/ — edit those, then run bash build.sh to rebuild it.