Git thee to a source controllery

Team 900 would like a Linus Torvalds. If you have a Linus Torvalds then please take it to Team 900.

EDIT: For anyone coming into this thread now, it was split from another topic. The above was my attempt at humor because pit announcers will typically announce just about anything if asked nicely and teams are talking about loaded foot-guns with binary-control (it ain’t source control) via sneakernet microSD cards. Linus Torvalds was the original creator of git after the Linux kernel moved its source control over to it from BitKeeper. I’ve marked Peter’s comment as the “solution” because it was both amusing and helpful. Enjoy your day.


Obligatory xkcd:

More seriously, this is a great way to get a better understanding of how Git works under the hood: Git Internals - Learn by Building Your Own Git


For the first few years of my career, I was the “delete the project and download a fresh copy” guy. Now I’m the “It’s really pretty simple…” guy. I don’t know which one I like better.


I also think this would be a good place to refer to the incredible GIT CTF that @noamzaks created.

It took me longer to complete than the handful of minutes which seems to be the norm in the thread, but could be helpful.

Also, with Python, you can use winscp or a similar program to grab your code from the Rio. Of course, that has to be done before the memory is corrupted.

1 Like

I once gave a 10-slide presentation to my work group explaining “It’s really pretty simple…”

That went over well.


“This should be intuitively obvious to even the most casual observer” :wink:

1 Like

Git is the Ikea of software development - it’s sturdy and elegant, but unfortunately the instructions were written in nominal English by someone whose first language is Swedish.


From the Zen of Python:

There should be one-- and preferably only one --obvious way to do it.
Although that way may not be obvious at first unless you’re Dutch.

(for context: Guido van Rossum, the creator of Python, is Dutch)

However, since Linus is Finnish and Git is nearly the opposite of Python regarding this, maybe the Git equivalent is something like:

There should be many non-obvious ways to do it.
There may be an obvious way if you’re Finnish.

(This Git conversation is starting to get pretty far off-topic… maybe time to split the thread?)


Relevant on multiple levels

Also agreed on the thread split. I’d propose a “RoboRIO 2.0 and Version Control Implications” thread? mods rock!

1 Like

I used to be a delete everything guy

Now I’m a “Different directory for each branch” guy

1 Like

Doing this project for a class really helped me get a handle on how Git works: Project 2 | CS 61B Spring 2015. Particularly advanced HS students could probably complete it.

Kudos to anyone else who is thinking of Shakespeare.


I understood that reference.

1 Like

Look at me. I’m the bard now.

1 Like

I was trying to figure this out, and couldn’t. Then the thread/topic title changed…

But are you using git worktree?

That’s a neat feature. TIL…

But note:

Multiple checkout in general is still experimental, and the support for submodules is incomplete. It is NOT recommended to make multiple checkouts of a superproject.

Yet another reason not to use submodules (in case you needed one).

Nope. Just separate folders.

I’ve learned to use git as little as possible. Separating folders has worked well for me so far

1 Like