A Programming Git CTF

MisCar 1574 Git Games

icon
Announcing Git Games - our programming Capture the Flag for learning git.
To make our training more enjoyable for freshmen every year, we’ve decided to teach Git using a challenge:

  • There are 7 challenges to crack currently, with room to grow in the future (if you have any ideas send them to our email!)
  • Each level is an encrypted ZIP archive with instructions
  • You need to use Git commands to find the password to the next level
  • In the end you will find the Git Games Trophy (which you can share below)

In the end you’ll hopefully know Git enough to have no troubles switching branches and managing commits and progress during the intense seasons.

The full instructions and first level are included here. Be sure to read them as well, or you’ll get stuck on the first level (the password is MisCar).

If you’ve managed to beat the games, feel free to post your time record down below and we’ll mention you on our website. No cheating!

Enjoy!

MisCar 1574’s Programming Team

19 Likes

This is an excellent idea. Not only does this seem fun, but it will help students learn git commands. Disguise learning as a game (that’s pretty much what FRC is anyways)

1 Like

4:00 (really minus like 2sec because my keyboard decided to act up on stopping it, lol)
image

That was good. Honestly may use this for 3468.

2 Likes

You have the git games trophy in 4 minutes??

1 Like

Yes. TBF, I am a Software Engineer who uses Git daily.

Wow, here I was telling my friends they could set a record because 45 minutes seemed a little high to me.
That’s incredible…
Can I mention your record on the website?

1 Like

Of course. If you want to use my real name its Gustave Michel.

This is a neat challenge! I was able to complete it in about 5 minutes (didn’t really accurately time it), but covers a lot of important Git concepts. I’ll definitely pass this on to my team.

2 Likes

Awesome! Can I list you as well on the website?

Sure!

"Hello everyone welcome to the channel be sure to like and subscribe.

So today we’re going to be speedrunning Git. Let’s git to it!"

5 Likes

Took me roughly 10 minutes. Pretty good exercise!

I didn’t solely use the command line though, so I’m not sure if that’s cheating. All the git commands were in git bash, but some of the other stuff I used other things. I won’t give too much away

3 Likes

The point is to have fun and while you’re at it get comfortable with Git, so it’s definitely not cheating. In fact some of my friends did it using SourceTree or GitHub Desktop.
Moreover, I use mostly GUI programs in the end to manage competition code, and I don’t see that as a negative in any way.

Can I place you on the website’s leaderboard?

Sure. I don’t have a super accurate time though

This is really nice! Took me about 10 minutes. I’d love to see a git tree with merge conflicts that the player has to use rebasing/stashing to fix!

3 Likes

Finished in ~10 minutes. Loved the 7th level - thanks!

Definitely going to share this with the rest of the subteam!

1 Like

I was more like 26 minutes, but it was a fun challenge.

2 Likes

Btw, if you’re interested in creating CTFs of your own I created a very simple python script in my GitHub to create the ZIP layout used in our CTF.

Also, given the suggestions we’ll be sure to release a broader version in a couple of months which will cover more topics such as merging and such. If you still have suggestions (or even level ideas!) feel free to reach out

1 Like