Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
M
mockturtle
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
Operations
Operations
Incidents
Packages & Registries
Packages & Registries
Container Registry
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Marcus Anderson
mockturtle
Commits
5e4d636b
Commit
5e4d636b
authored
Sep 30, 2016
by
Simon Katan
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Mock Turtle forgets
parent
9829e406
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
174 additions
and
63 deletions
+174
-63
RUNME.sh
RUNME.sh
+174
-63
No files found.
RUNME.sh
View file @
5e4d636b
#!/bin/bash
checksums
=(
"11194"
"25841"
)
words
=(
"body"
"conflict"
)
checksums
=(
"01112"
"23824"
"40805"
"xxxxx"
"65646"
)
words
=(
"cod"
"inventor"
"journey"
"xxxxx"
"forest"
)
mark
=
0
command
=
"python"
function
loadPython
{
...
...
@@ -57,7 +58,7 @@ function checkWord {
if
[
"
$crc
"
=
"
${
checksums
[
$1
]
}
"
]
;
then
isMemoryValid
=
true
local
level
=
$((
20
3
+
$1
))
local
level
=
$((
20
0
+
$1
))
$command
baseutils.py
$filename
"score"
$level
${
words
[
$1
]
}
elif
[
"
$crc
"
=
"
${
checksums
[
$prevIndex
]
}
"
]
;
then
isPrevMemoryValid
=
true
...
...
@@ -77,73 +78,154 @@ function pause {
done
}
function
speech1
{
function
task1
{
clear
pause 1
echo
"Hi"
pause 1
echo
"I see that you have come from my future."
echo
"It’s so nice of canary.bird to have brought you here. Let me introduce myself. "
pause 1
echo
"I am the famous mock turtle."
pause 1
echo
"What do you mean you’ve never heard of a mock turtle !"
pause 1
echo
"I’m the thing that Mock Turtle Soup is made from."
pause 1
clear
echo
"I’m very sad. Can you help me ?"
pause 1
echo
"Great I knew you would."
pause 1
clear
echo
"I am very old and I used to have so many memories"
pause 1
echo
"but now they have all slipped away."
pause 1
echo
"Check the memories.txt in this directory and you will see that it’s totally blank"
pause 1
echo
"It wasn’t always this way."
pause 1
clear
echo
"My mind used to be full of rich and delicious memories."
pause 1
echo
"Now I need you to find them"
pause 1
echo
"I hear that you have just learnt how to use a strange tool called git which can help you recover things when you’ve lost them."
pause 1
echo
"
I am on long and strange journey
"
echo
"
Let’s start by recovering my very first memory.
"
pause 1
echo
"
use 'git log --oneline -5' and you can see the many strange places I have been
"
echo
"
Use 'git log --oneline' to find out its name and then cut and paste this into the first line of my memories.
"
pause 1
echo
"
Add these places to my memories
"
echo
"
Be sure to use a proper code editor like atom or sublime. Don't use textedit or notepad !
"
pause 1
echo
"commit the changes and then RUNME again."
echo
"Once you have done this RUNME again"
pause 1
}
function
task2
{
clear
echo
"Ah yes school that was my first memory."
pause 1
echo
"I went to school in the sea."
pause 1
echo
"Most of my classmates were fish."
pause 1
echo
"Tuna mostly but also some cod"
pause 1
echo
"Nobody understood me there."
pause 1
echo
"It was a sad and lonely time."
pause 1
echo
"Perhaps you can help me find a happier memory ?"
pause 1
clear
echo
"I think my second year of school was a little happier"
pause 1
echo
"Find the commit using 'git log --oneline' and travel back in time by using 'git checkout' "
pause 1
pause 1
echo
"When you go back in time my memories will be different"
pause 1
echo
"Don't be alarmed. This is totally natural."
pause 1
echo
"However, make sure you use git 'commit -am' to store these memories first or they will be lost again."
pause 1
echo
"Once you have travelled back in time, RUNME and I will tell you my memories from that time."
pause 1
echo
"Return to this time (the master branch) with the happy memory and add it to a new line in memories.txt"
}
function
speech2
{
function
task3
{
clear
echo
"
During my journey something strange has happened to me
."
echo
"
Ah Tortoise yes I remember her
."
pause 1
echo
"
Something caused my conciousness to become detatched from my brain
."
echo
"
Thankyou I feel much better about my school days now
."
pause 1
echo
"
You are talking to my conciousness but my brain is somewhere out there too.
"
echo
"
Ah I remember so much more now
"
pause 1
echo
"
Use 'git log --all --oneline --graph --decorate' to see the branch where they parted ways.
"
echo
"
After I left school I became an inventor
"
pause 1
echo
"I need you to merge them back together, but this will be tricky
"
echo
"I would have been a great success but for one problem
"
pause 1
echo
"First make a local branch here using 'git branch' ... don't forget to add a name for it"
echo
"With each new invention I forgot the last"
pause 3
clear
echo
"Use 'git tag -l' to view all the tags for my inventions"
pause 1
echo
"now checkout the remote branch called myBrain
"
echo
"Each tagged commit has an invention in it in a file called inventions.txt
"
pause 1
echo
"
once you are there make another local branch in the same way
"
echo
"
Now use the form 'git checkout tagName -- inventions.txt' to bring each invention to the present
"
pause 1
echo
"finally merge the two branches together with 'git merge' .
"
echo
"Notice that each inventions.txt replaces the old inventions.txt
"
pause 1
echo
"
There will undoubtedly be conflicts between my conciousness and my brain.
"
echo
"
Luckily you are here so that you can help me to not forget them
"
pause 1
echo
"
Fix these by editing memories.txt so that all of the memories are included but nothing else
"
echo
"
Each time open inventions.txt and cut and paste the invention to a new line of memories.txt
"
pause 1
echo
"
Commit the changes and them
RUNME again"
echo
"
When you have found all of my inventions
RUNME again"
}
function
speech3
{
function
task4
{
clear
echo
"Thankyou I can finally stop this travelling"
echo
"Everything is becoming clearer to me now"
pause 1
echo
"Something is coming out the fog of my memory"
pause 1
echo
"I seem to remember something about a long journey"
pause 1
echo
"Use 'git
log --all --oneline --graph --decorate' to see what you have done for me.
"
echo
"Use 'git
branch -r' to find a remote branch for this
"
pause 1
echo
"
My conciousness and brain are now rejoined.
"
echo
"
Then use 'git checkout' to explore the branch and RUNME
"
pause 1
echo
"
The final stage is to bring all of these changes to the present.
"
echo
"
When you go back in time, all of the current memories will disappear
"
pause 1
echo
"
You will need to merge this branch with master
."
echo
"
Don't be alarmed. This is totally natural as they won't have happened yet
."
pause 1
echo
"And you will need to edit memories.txt for conflicts"
echo
"However you must commit the current memories here first using 'git commit -am'"
pause 1
echo
"I wouldn't want to lose those wonderful memories again."
}
function
task5
{
clear
echo
"Thankyou so much."
pause 1
echo
"But you are an expert time traveller now so I don't think you need help from me.
"
echo
"I can remember everything now !
"
pause 1
echo
"
Just one bit of advice ...
"
echo
"
I've just remembered something very important that Rabbit told me
"
pause 1
echo
"
Don't forget to commit your changes here first.
"
echo
"
Your name is
$username
right ?
"
pause 1
echo
"Well then you need to go see Caterpillar in the forest"
pause 1
echo
"You'll find him by the magic toadstool"
pause 1
echo
"http://gitlab.doc.gold.ac.uk/underland/magicToadstool.git"
pause 1
echo
"Don't forget to keep you score file safe (you know the one thats starts with 'aiw_'). "
pause 1
echo
"Maybe you could store it in a repo of your own ?"
}
function
badMemory
{
...
...
@@ -174,27 +256,56 @@ elif [ ! -f $filename ] ;then
echo
"Have another go"
.
exit
else
checkScript
$1
if
[
$mark
-eq
8
]
;
then
if
[
$mark
-eq
1
]
;
then
checkWord 0
if
[
"
$isMemoryValid
"
=
true
]
;
then
speech
2
task
2
else
speech1
task1
#echo "fail"
fi
elif
[
$mark
-eq
10
]
;
then
elif
[
$mark
-eq
4
]
;
then
checkWord 1
if
[
"
$isMemoryValid
"
=
true
]
;
then
speech3
task3
elif
[
"
$isPrevMemoryValid
"
=
true
]
;
then
task2
else
badMemory
fi
elif
[
$mark
-eq
6
]
;
then
checkWord 2
if
[
"
$isMemoryValid
"
=
true
]
;
then
task4
elif
[
"
$isPrevMemoryValid
"
=
true
]
;
then
task3
else
speech2
badMemory
fi
elif
[
$mark
-eq
8
]
;
then
task4
rm
baseutils.py
rm
levelCodes
elif
[
$mark
-eq
10
]
;
then
checkWord 4
if
[
"
$isMemoryValid
"
=
true
]
;
then
task5
else
pause 1
echo
"Something is wrong with your memories."
pause 1
echo
"Have you resolved your conflicts ?"
pause 1
fi
elif
[
$mark
-eq
11
]
;
then
task5
rm
baseutils.py
rm
levelCodes
else
badMemory
rm
baseutils.py
rm
levelCodes
fi
fi
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment