Teaching Version Control: A Foundation Book for Grades 8–12¶
Git for Schools — an open, offline-first book for students, teachers and anyone starting a project.
Preface¶
Every piece of work has a history. A student's essay grows over a week; a team's website changes every day; a dataset is corrected, extended and re-published; a government policy is revised. Version control is the practice — and Git the tool — that records that history: what changed, when, who changed it and why, with the power to go back, to work in parallel and to combine everyone's work safely.
Most people learn version control late, in a hurry, from scattered tutorials. This book does the opposite. It builds the idea slowly and deliberately over five school years, starting with paper cards in Grade 8 and finishing with a professional team project in Grade 12, so that it becomes a foundation: a correct mental model, automatic good habits, and the judgement to use them in any project.
It was first written for schools in Nepal, and every lesson works in a classroom with no computer, with offline computers, on a school network, or with the internet — but nothing in it is specific to one country: it is meant for any school, anywhere.
Who this book is for¶
| You are… | Start with | Then |
|---|---|---|
| a student following the book on your own | Grade 8, Module 1 | one module at a time; do the PRIMM lab and at least one "Practise more" exercise; check yourself with the exit ticket |
| a teacher | Part I: Teaching version control as a foundation and the Teacher hub | teach one module ahead of your class; use the teacher guide/notes and answer keys |
| a learner joining late (+2, university, adult) | Part VII: the bridge course | the competency checklist, then Part VIII |
| someone starting a project | Part VIII: Version control in any project | the cheat sheet and troubleshooting appendices |
| a curriculum planner | Part I and the CDC brief | the alignment files in the repository |
How the book is organised¶
| Part | Content |
|---|---|
| I | Teaching version control as a foundation — the concept spine, threshold concepts, misconceptions, assessment, labs |
| II | Grade 8 — Time Machine for My Work: snapshots, history, undo, statistics, a class magazine |
| III | Grade 9 — Branch and Share: terminal, branches, merges, remotes, Python and SQL in Git |
| IV | Grade 10 — Team Workflows: issues, pull requests, review, releases, websites, CI |
| V | Grade 11 — Open-Source Contributor: licences, first contributions, rebase/reset/reflog, conventions, open data |
| VI | Grade 12 — Engineering with Git: internals, strategies, CI/CD, SemVer, security, AI review, bisect, capstone |
| VII | After Grade 12: the foundation, consolidated — checklist, practical test, bridge course |
| VIII | Version control in any project — playbook, recipes, templates |
| IX | Books and further reading |
| Library | Free resource library — every exercise source, with licences |
| App. A | Command cheat sheet |
| App. B | Troubleshooting: "Oops, Git!" |
| App. C | Glossary (English and Nepali) |
How every lesson is built¶
Each module follows the same pattern, so students and teachers always know where they are:
- At a glance — time, materials, delivery tiers, outcomes.
- Hook — a real problem.
- Understand it — the explanation, readable on its own.
- See it — a worked example with real Git output.
- Unplugged / concept activity — paper or visual model.
- PRIMM lab — Predict, Run, Investigate, Modify, Make.
- Parsons practice — put the steps in order.
- Common mistakes — symptom, cause, fix.
- Practise more with free resources — exercises from the best free materials worldwide.
- Exit ticket, Key points, New words, Extension quest, and Teacher notes with answer keys.
Delivery tiers¶
Every module lists the tiers it supports: 0 no computer · 1 offline computers (USB kit) · 2 school LAN server (Forgejo) · 3 internet. See the Teacher hub.
Status of this edition¶
This is edition 0.3 (October 2026). The Grade 8 chapter is the most complete; Grades 9–12 are full drafts that have not yet been piloted in classrooms. Nepali translations exist as summaries; the expanded English text is the new source for full translation. Corrections and improvements are welcome — Grade 11 Module 4 shows how to contribute.
How this book was made¶
This material was drafted with the assistance of AI, then curated, verified and adapted by the author. An originality check against major Git references (Pro Git, the official Git documentation, GitHub Docs) found no copied text; see research/originality-check.md in the repository.
Licence and credit¶
Text: CC BY 4.0; code and templates: MIT. You may print, adapt and share this book — including commercially — if you credit it:
"Git for Schools" by Ram Chandra Giri and contributors, licensed under CC BY 4.0. Source: https://github.com/rcgiri-physics/git-for-schools
External resources referred to in this book keep their own licences; several are linked rather than copied for that reason (see the resource library).