mirror of
https://github.com/git-learning-game/oh-my-git.git
synced 2024-11-24 16:20:08 +01:00
"branch-remove" level
This commit is contained in:
parent
3904abb6c4
commit
803f4f897a
3 changed files with 53 additions and 1 deletions
47
levels/time-machine/branch-remove
Normal file
47
levels/time-machine/branch-remove
Normal file
|
@ -0,0 +1,47 @@
|
||||||
|
title = Choose your own adventure
|
||||||
|
cards = checkout commit-auto reset-hard branch-delete
|
||||||
|
|
||||||
|
[description]
|
||||||
|
|
||||||
|
Life is full of dangers, right? Even when walking to school, it seems like there's a lot of risks!
|
||||||
|
|
||||||
|
This Monday is especially bad. You made it to school, but there's some timelines you definitely don't want to keep around.
|
||||||
|
|
||||||
|
Find the bad branches and delete them. Keep the one that seems okay.
|
||||||
|
|
||||||
|
[setup]
|
||||||
|
|
||||||
|
echo You leave your house and start walking to school. > you
|
||||||
|
git add .
|
||||||
|
git commit -m "Good morning!"
|
||||||
|
|
||||||
|
echo You walk on the right side of the street. >> you
|
||||||
|
git commit -am "Right side"
|
||||||
|
|
||||||
|
echo You jump over an manhole in the walkway, and arrive at school on time. >> you
|
||||||
|
git commit -am "Jump"
|
||||||
|
|
||||||
|
git checkout HEAD^ -b friend
|
||||||
|
echo Suddenly, you fall down, splash into stinking water, and are eaten by an alligator. >> you
|
||||||
|
git commit -am "A new friend"
|
||||||
|
|
||||||
|
git checkout HEAD~2 -b music
|
||||||
|
echo You walk on the left side of the street. >> you
|
||||||
|
git commit -am "Left side"
|
||||||
|
|
||||||
|
echo Because you\'re kind of late, you start running. Someone throws a piano out of their windows, and it smashes you. >> you
|
||||||
|
git commit -am "Sounds nice"
|
||||||
|
|
||||||
|
git checkout HEAD^ -b ice-cream
|
||||||
|
echo You\'re not in a hurry, and walk slowly. You even get some ice cream on your way. You arrive at school too late, and your teacher is angry. >> you
|
||||||
|
git commit -am "Yum"
|
||||||
|
|
||||||
|
git checkout main
|
||||||
|
|
||||||
|
[win]
|
||||||
|
|
||||||
|
test "$(git branch | cut -c 3-)" = "$(echo -e ice-cream\\nmain)"
|
||||||
|
|
||||||
|
[congrats]
|
||||||
|
|
||||||
|
On second thought, maybe you even prefer the ice cream timeline to the main one? :)
|
|
@ -94,6 +94,11 @@
|
||||||
"command": "git branch [string]",
|
"command": "git branch [string]",
|
||||||
"description": "Create a new branch."
|
"description": "Create a new branch."
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"id": "branch-delete",
|
||||||
|
"command": "git branch -D [ref]",
|
||||||
|
"description": "Delete a branch."
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"id": "file-new",
|
"id": "file-new",
|
||||||
"command": "touch [string]",
|
"command": "touch [string]",
|
||||||
|
|
|
@ -123,7 +123,7 @@ func dropped_on(other):
|
||||||
else:
|
else:
|
||||||
argument = other.id
|
argument = other.id
|
||||||
|
|
||||||
if (command.begins_with("git checkout") or command.begins_with("git rebase")) and argument.begins_with("refs/heads"):
|
if (command.begins_with("git checkout") or command.begins_with("git rebase") or command.begins_with("git branch -D")) and argument.begins_with("refs/heads"):
|
||||||
argument = Array(argument.split("/")).pop_back()
|
argument = Array(argument.split("/")).pop_back()
|
||||||
|
|
||||||
var arg_regex = RegEx.new()
|
var arg_regex = RegEx.new()
|
||||||
|
|
Loading…
Reference in a new issue