Skip to content

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:

  1. At a glance — time, materials, delivery tiers, outcomes.
  2. Hook — a real problem.
  3. Understand it — the explanation, readable on its own.
  4. See it — a worked example with real Git output.
  5. Unplugged / concept activity — paper or visual model.
  6. PRIMM lab — Predict, Run, Investigate, Modify, Make.
  7. Parsons practice — put the steps in order.
  8. Common mistakes — symptom, cause, fix.
  9. Practise more with free resources — exercises from the best free materials worldwide.
  10. 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).