title = Branching out cards = checkout commit-auto merge reset-hard [description] You can use these little blue labels to give names to different timelines! This makes it easier to remember what happened where. One of your colleagues messed up here - can you help reordering the branches correctly using the "reset" card? When you do commits or merges while you're on a branch, the branch will grow with you. Try that while you eat that donut. Finally, merge all timelines together, in a way so that the "main" branch points to the result. That's base reality! [setup] echo "A friendly old lady. Sells delicious baguettes." > mary echo "A rebellious teenager. Sells good coffee." > larry echo "A snail. Literally a snail. Sells donuts with an unspecified, slimy filling." > gary echo "You do not have a baguette. You do not have coffee. You do not have a donut." > you git add . git commit -m "The Beginning" git checkout -b coffee echo "You have a baguette. You do not have coffee. You do not have a donut." > you git add . git commit -m "You buy a baguette" echo "You ate a baguette. You do not have coffee. You do not have a donut." > you git add . git commit -m "You eat the baguette" git checkout -b baguette main echo "You do not have a baguette. You have coffee. You do not have a donut." > you git add . git commit -m "You buy some coffee" echo "You do not have a baguette. You drank coffee. You do not have a donut." > you git add . git commit -m "You drink the coffee" git checkout -b donut main echo "You do not have a baguette. You do not have coffee. You have a donut." > you git add . git commit -m "You buy a donut" git checkout --detach main [win] { git show main:you | grep "You ate.*baguette"; } && { git show main:you | grep "You drank.*coffee"; } && { git show main:you | grep "You ate.*donut"; } [congrats] Nice! It's often convenient to stay on branches most of the time!