The Thing About Git

All it takes is about 300 lines of accidentally-deleted CSS before you say, “You know what? Maybe it’s time to get serious about version control.” Which means it’s time for the scary, scary command line. Terrifying for someone who hasn’t been living in it for a while.

But wait! A cursory Google search reveals that there are bunch of native Mac apps for Git! With beautiful GUIs! Clickable buttons! None of that scary $ nonsense!

It seems like a lifeline, a way in. An easier way to learn this monstrosity that is Git. I’ll dive into all that command line stuff later.

Except it doesn’t work that way.

Let’s take Tower, for instance. My goodness, is this a beautiful app. Just look at it!

Just the type of polish you’d expect from a best-in-class Mac app.

But… wait. What do those buttons mean? What are Push and Pull? What’s Commit mean? I have commitment issues… not gonna mess with that thing. And what are all those letters in colored boxes?

No matter how beautiful the app, you have to understand Git conceptually, or else it’s useless. You’re just pushing buttons.

Terminal-phobes: I know it’s scary, but you’re going to have to get your hands dirty sooner or later. You can’t hide behind a GUI forever.

(Looking for a place to start? I’ve found both Git Immersion and the Pro Git book to be super helpful.)