$ Git Game

New to Git? Start here

You don't need to know what Git is to play this game, and you don't need to have written a line of code. This is the two-minute version of what the game is about, with none of the programmers' words used until each one has been explained.

One thing, built by many hands

Software is written by groups. Ten people might be working on the same program at once, and if they all typed into the same file at the same time they would wreck each other's work within the hour. So each person works on their own copy, and every so often sends their finished pieces to a shared copy that everyone agrees is the real one. Git is the tool that keeps track of all of this: whose piece came in when, what changed, and how to undo it. Almost every programmer in the world uses it, every day.

Picture a tower that a group is building together, one brick at a time. Everyone works from a photo of the tower, and when your brick is ready you walk over and put it on top. Most of the day, that is all there is to it. The interesting part is what happens when it isn't.

Five things that go wrong, and the words for them

How a game goes

A game is a handful of days long. A day can be one minute or a whole real day; you choose when you start. Each day, everyone looks at the shared tower, decides on the few things they will do, three give or take, writes them down as a pack, and sends it. When the day ends, all the packs happen at once, in an order nobody chose, which is where the bouncing and the clashes come from. After seven to twelve days the tower is tall enough, and the game ends.

You can play against a bot, which says why it does each thing it does, or in a room with up to four friends, from a link. There is nothing to install and nothing to sign up for.

Who this is for

The words, one line each

Word What it means In the tower
Git The tool that keeps track of everyone's pieces The photo album, and the rules for adding bricks
commit One finished piece of work A brick
main The shared copy everyone agrees is real The tower
push Sending your piece to the shared copy Placing your brick on top
pull Getting the latest shared copy Taking a new photo of the tower
rejected Your push was refused: the shared copy moved first Your brick doesn't fit the top
conflict Two pieces changed the same thing Two shapes for one brick
force push Overwriting the shared copy with yours Knocking bricks off to place yours
reflog The record that lets you undo that The photos from before
bug A mistake hidden in a piece A cracked brick, painted over
blame Finding which piece a line came from Reading who laid a brick
release Declaring the work done and checking it The inspection

Play the first game

It walks you through a day, one sentence at a time, and every word above comes up when it is needed.

play the bot now