What the hell are Git and GitHub?

Originally published at: https://boingboing.net/2020/04/09/what-the-hell-are-git-and-gith.html

3 Likes

Red_a204b4_5445726

12 Likes

17 Likes

Dan Shiffman’s videos are really good. If you want to learn about those programming languages for artists (Processing, p5.js), he’s your guy. He’s super-enthusiastic.

1 Like

“What”, and perhaps more importantly “why?”

Granted, I don’t know specifically what the right solution will turn out to be, but I’m confident git isn’t it.

2 Likes

I actually like git, but it has quite a bit of a learning curve. There are a ridiculous number of git commands, each with a whole bunch of options. You can learn a minimal subset of it, but even with that, you had better have a good idea of how it works, or you are going to get your project into a bad state and not know what to do about it.

That said, there are good things about it, and it is actually simpler than some other systems. In particular, it was designed to make branching and merging relatively painless, and it does that. Merging in most other version control systems can be a complex, risky, and heavyweight operation. Not so in git.

9 Likes

Better than using IBM Rational Clearcase. Uugh.

7 Likes

Normally this video goes for $1995, but today only we offer it for just $99.50, that’s over 95% off the original price. Only at bb. shop.

8 Likes

Just re. Red Dwarf

There is a NEW one-off feature-length episode of Red Dwarf showing at 9pm tonight UTC on the free-to-air satellite channel “Dave”.
`

Not long to go until brand new #RedDwarf


Tonight. 9pm.

Tell everyone you know. Scream it out of your windows at your terrified neighbours. Stick a little H to your pets foreheads. Basically, get ready. pic.twitter.com/2xg0SMKB8W


Dave (@davechannel) April
9, 2020

It’s about a civilisation of cats descended, like Danny John-Jules, from Lister’s cat, seeking out their god, and the previews on YouTube look pretty good!

(If you can’t get “Dave”, I’m sure it’ll be available elsewhere soon enough)

Sorry @frauenfelder for the OT! It’s just that I could use a lift and am unreasonably excited about this :slight_smile:

9 Likes

Thanks!
 

4 Likes

34 Likes

git is wonderful if you’ve got a bunch of people working on the same project-- it’s super easy to create your own branch (a copy of the code with your changes) and merge them back into the main trunk, including helping you resolve issues when someone else changed a file after you created your branch. Other source management tools I’ve used are much less flexible when it comes to this.

8 Likes

If you want a private Git repository, throwing a Pi at the problem is one solution.

1 Like

I’m the go-to guy for Git at my work, because I’m the only person who knows the command line interface (everybody else needs buttons and clicks).

7 Likes

I use the command for a lot of things, but I find diffs and merge conflict resolution to be much easier from a GUI. Lately I’ve been playing with Sublime Merge, and have really liked it-- especially its merge conflict resolution.

4 Likes

The BBS supports using github as a login provider, even!

8 Likes

Nice tip. It looks pretty nice for a merge tool. I’ll have to check it out (pun unintended).

1 Like

Having a very, very long background in software development, I’ve used at least a dozen version control software packages, both open source and commercial. Most of them sucked heartily for a lot of reasons; and the commercial packages were usually much worse than the open source options. However, for a long time management didn’t trust free software, so they hobbled us with a series of increasingly crappy “solutions”; from PVCS to Serena to Dimensions to can’t-even-remember, they just kept on sucking harder and harder. Several development teams in our company ran our own shadow-IT subversion servers, and we periodically would sync the tip copy of code back to the official system just to say we were complying with their corporate-mandated shit.

However, Microsoft Team Foundation Server (TFS, now Microsoft Team Services or MSTS) was the next-to-last management system I used, and holy crap was it amazingly good! Fast, rock solid, and the integration with Microsoft Visual Studio was fabulous. Its most brilliant shining feature, though, had to be its support for code reviews.

The main problem with TFS was that old, experienced people would treat it like the systems they were used to, like rcs, and would run it with a clunky formal check-out/check-in model. That’s actually how Microsoft’s paid experts said how to use it. But that was poor advice because it brought all the pain of using rcs with it. Instead, we set things up to mirror repos locally, do our work on them with “silent” check-outs, commit our deltas, and merge changes back to the tree, in other words we used it exactly like git, without the drawbacks of git. But, the MS haters assumed everyone was still using it the old fashioned way, and proclaimed “git is the One True Version Control System.” (Plus, git is free, and MSTS is a lot of $$ per seat.) So one day we had to abandon it and we moved everything to git.

Now git is OK, and certainly one of the best version control systems out there. I still use it daily, and there’s no temptation to try to bring in something better. Git’s complexity isn’t an issue as every new version control system takes some getting used to, and you’ll quickly realize there are only about a half dozen command lines you need to use on a daily basis and they’re easily committed to memory. Git is certainly a huge step up from the old days of rcs, subversion, etc. But git was certainly a disappointing letdown from MSTS - it was like turning in a leased BMW and being handed the keys to a used Ford Escort.

8 Likes

I could not agree with you more, every word. Nice summation.

(Confession time, I also have a sneaking regard for Clearcase, but that could be just a tiny bit of Stockholm Syndrome…)

3 Likes

Workflows that benefit from a central repository (such as with build systems) are really wonky with git. Otherwise it’s not less intolerable than its predecessors.

1 Like