title = Merging timelines
cards = checkout commit-auto reset-hard merge

[description]

Here's a trick so that you can sleep a bit longer: just do all your morning activities in parallel universes, and then at the end, merge them together!

Here, you see three parallel timelines - can you build a reality in the "main" timeline where you have a baguette, a coffee, *and* a donut?

The "merge" card will help you - try it!

[setup]

mkdir bakery coffee_shop donut_shop

echo "A friendly old lady.
Sells delicious baguettes for 5 coins each." > bakery/mary

echo "A rebellious teenager.
Sells good coffee for 2 coins each." > coffee_shop/larry

echo "A snail. Literally a snail.
Sells donuts with an unspecified, slimy filling - for 3 coins each." > donut_shop/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 baguette
echo "You have a baguette.

You do not have coffee.

You do not have a donut." > you
git mv you bakery
git add .
git commit -m "You get a baguette"
git mv bakery/you .
git add .
git commit -m "You leave the bakery"

git checkout -b coffee main
echo "You do not have a baguette.

You have coffee.

You do not have a donut." > you
git mv you coffee_shop
git add .
git commit -m "You get some coffee"
git mv coffee_shop/you .
git add .
git commit -m "You leave the coffee_shop"

git checkout -b donut main
echo "You do not have a baguette.

You do not have coffee.

You have a donut." > you
git mv you donut_shop
git add .
git commit -m "You get a donut"
git mv donut_shop/you .
git add .
git commit -m "You leave the donut shop"

git checkout main

[win]

{ git show main:you | grep "You have a baguette"; } && { git show main:you | grep "You have coffee"; } && { git show main:you | grep "You have a donut"; }

[congrats]

I wonder if you're more relaxed when you try to *sleep* in parallel timelines...