Home / Hands-on activities / Version Control Story

Coding activity

Version Control Story

Write a story and save copies as you go! Each time you add to the story, keep the old version too. If you make a mistake, you can go back to an earlier version!

Hands OnAbout 20 minutesScreen-freeParent help expected

Materials and setup

How this changes by age

Pre-K (ages 3–4)

Write a story and save copies as you go! Each time you add to the story, keep the old version too. If you make a mistake, you can go back to an earlier version!

Difficulty 1 of 3

Steps

  1. Start a story on paper: draw a character and write one sentence (with help).
  2. Copy the page (parent helps). Write: 'Version 1' on the copy. Put it in a folder.
  3. Add to the story: draw another character, write another sentence. Copy again: 'Version 2.'
  4. Keep going for 3-4 versions. You now have a folder of saved versions!
  5. What if you liked version 2 better? Pull it out! You can always go back. 'That is called a backup!'
  6. Tell a grown-up one thing that surprised you.

Learning objectives

  • Understand that saving copies lets you go back to an earlier version
  • Practice creating sequential versions of a project
  • Experience the safety of being able to undo a mistake by reverting

Kindergarten (ages 5–6)

Build a story with save points! Write a collaborative story where everyone adds a part. Keep track of who wrote what and when. If someone's addition does not work, revert to the previous save!

Difficulty 2 of 3

Steps

  1. Start a story. Writer 1 adds a paragraph. Copy the page and label it: 'V1 — by Writer 1 — date.'
  2. Writer 2 adds the next part. Copy and label: 'V2 — by Writer 2 — date.'
  3. Writer 3 adds a part that does not make sense (on purpose!). Copy and label V3.
  4. Discuss: 'V3 does not fit the story. Let us go back to V2 and try a different addition.' Make V4 from V2.
  5. Show the folder of versions: 'We can see the whole history of our story and who changed what!'
  6. Tell a grown-up one thing that surprised you.

Learning objectives

  • Label versions with author and date information
  • Practice reverting to an earlier version when a change does not work
  • Track the history of changes made by different contributors

Early elementary (ages 6–8)

Learn version control by managing a collaborative project! Use branching (separate copies for experiments), merging (combining changes), and commit messages (explaining what changed). Your paper system works like Git!

Difficulty 2 of 3

Steps

  1. Start a group story (the 'main branch'). After 2 paragraphs, make 2 copies (branches): 'Adventure Branch' and 'Mystery Branch.'
  2. Each branch writer adds a different paragraph to their copy. Write a commit message: 'Added a dragon chase scene.'
  3. Compare branches: which addition is better? Vote as a group.
  4. Merge the winning branch: add its paragraph to the main story. Write: 'Merged Adventure Branch into Main.'
  5. Conflict! What if both branches changed the same sentence differently? Discuss and pick the best version.
  6. Review the log: list every version, branch, merge, and commit message. You now have a project history!
  7. In one sentence, tell a parent or sibling what surprised you today.

Learning objectives

  • Create branches to experiment with different changes independently
  • Write descriptive commit messages that explain what changed and why
  • Resolve merge conflicts by comparing and choosing between competing changes

Upper elementary (ages 8–10)

Master version control concepts used by developers. Simulate a full Git workflow on paper: repositories, branches, commits, merges, pull requests, and conflict resolution. Collaborate on a project with multiple contributors.

Difficulty 3 of 3

Steps

  1. Set up a 'repository': a folder with numbered pages. Page 1 is the initial project. Write 'commit: Initial project — author — date' on a log sheet.
  2. Create a feature branch: copy the current project. Make changes on the branch. Log each change as a commit with a message.
  3. Another person creates a different branch from the same starting point. Both work independently.
  4. Merge both branches into main. If both changed the same section, resolve the conflict by discussing and choosing the best combination.
  5. Explore the full log: every commit, every branch, every merge. Discuss: 'Why is this important when lots of programmers work on the same codebase?'
  6. In one sentence, tell a parent or sibling what surprised you today.

Learning objectives

  • Execute a complete version control workflow with branching, committing, and merging
  • Conduct code reviews through pull requests with constructive feedback
  • Understand why version control is essential for collaborative software development

Safety and evidence note

Read the full activity before beginning. An adult should supervise tools, heat, food, outdoor work, movement, and experiments as appropriate. Completion records that the activity was done; the child’s explanation, work sample, photo, or demonstration is stronger evidence of learning than a completion check alone.

Related coding activities

Browse all 575 activities · Explore course syllabi