
I never understood why we moved away from “trunk”.
Thank god the tech bros fixed racism back in 2021
It wasn’t even tech bros. Some people started using opensource software, discovered the master branch and lost their shit. Nobody meaningful had ever connected the name to anything malevolent, but those people made themselves be offended in the name of people who weren’t even offended by it.
Microsoft bought github and didn’t want the bad press so they renamed it after the twitter shitstorm. The professional victims then moved on to whatever else made noise on twitter and that was that.
I force all new projects to use master as all my old scripts and repos use master. Twitter shitstorms scan stay where they should be: in the toilet bowl of the internet aka twitter.
Meanwhile GitHub was (and is) doing contract work for ICE
And yet people still happily use the platform. À la “smash capitalism” sticker on a Macbook Pro.
And think of all those poor processes being executed and killed.
And most of them are children!
I don’t remember every detail but what I do remember is the wave starting with pre-elon Twitter devs announcing their changes and it started with web services that had master/slave terminology. Some of the new terms did make more sense, but some were clearly stretches. And twitter being based out of SF probably has put forth the effort to hire maybe 5 to 6 black people over it’s entire existence, so it felt especially shallow to me at the time. Hence the comment. Obviously there’s some assumptions there about twitters hiring practice but…I really don’t think I’m wrong, there’s definitely a cultural issue out there in the bay.
I still see master branches everywhere, even my new personal repos. This git renaming story is one of the most stupid OSS pushes I remember. That and Gimp fork, that then died out I think.
it has always bothered me that checkout is overloaded: it can switch branches or discard pending changes in an unrecoverable way.
so, PSA, you can replicate the safe part of checkout with
git switchand the unsafe withgit restore.I agree, I wonder why they decided to design it that way in the first place.
Ah, I love coherent software.
Switch and restore came later because checkout was problematic.
Has someone made a „Checkout considered harmful“ blog post yet or do we not do that anymore?
E we used to always stash before checkouts to try and find things in a branch
Just alias stuff like that, make it coherent.
I renamed my master branch
slaveowner. To make it more clear.It is software, my friends. It’s not a tribe of people.
You could do that, but I could argue that master/slave nomenclature isnt a good scheme for this anyway, since it doesn’t control any other branches. Unlike master and slave drives from the olden days.
By all means go ahead and keep your naming schemes. It’s your own stuff that after all, that for some reason you felt the need to tell everyone about. However, I might recommend trying to move past it seeing as language has an impact on how people think, and being edgy doesn’t exactly have a good track record of producing the best people.
You’re right, it isn’t a master/slave drive. It…never was intended to mean that, though.
I always assumed the name was more of a reference to audio Master Recordings.
It’s the original tapes or whatever that all copies are derived from. It’s also where the term “remastering” comes from, as in “we went in and rebuilt a new master from the individual tracks, and this is the new master now”, versus just making another copy of the master for a re-release.
There are no slave branches like there are no slave recordings.
*whips my hard disk*
My “master” branch actually does control other branches, as releases are usually made from it, so they all depend on it.
Not gonna lie, the master branch thing has been perceived as problematic but I don’t typically see an issue with it. It’s similar to master bedroom or bath.
Kind of fucked up name origin, butI don’t think anyone’s really making a fuss about it.Whatever the fuck you’re doing though feels like some gross, racist fantasy. It’s really weird, dude. If you think that’s funny you might need to go talk to some real people or touch grass.
Wtf are you talking about? It doesn’t have a fucked up name origin at all. It was named “master” as in “master recording”, like in music production. Proof: https://x.com/xpasky/status/1271477451756056577.
Master/slave concepts were never a thing in git. The whole renaming thing was really fucking stupid. Caused plenty of breakage of scripts and tools for absolutely no good reason whatsoever.
Where did the term master recording come from?
Alright. Doesn’t change my main point. Which is the person’s name for the master branch is fucking weird.
It is weird. So what? It’s just a branch name in a software control system. That’s the point they’re trying to make.
Master bedroom and master bath also have nothing to do with slavery.
Master’s degrees though — racist as fuck.
They don’t?
I’m doing it wrong.
Please grow up.
git push master --forceTranscription
The “It’s an Older Meme, But It Checks Out” meme, featuring an image of an Imperial officer from Star Wars, with the caption:
It’s an older branch, sir
But it checks out
I usually create new repos through GitHub or another central repo’s system, where it defaults to calling the main branch
main. But I did recently create a new repo with my local Git’sgit init, and had to deal with amasterbranch on a completely new repo for the first time in a while. It was actually kinda a weird experience.git checkout -b main git branch -D master git config --global init.defaultBranch mainYou don’t have to deal with shit if you don’t want to.
If you haven’t already found it, you need to change your global git config (
~/.gitconfig):git config --global init.defaultBranch main(or whatever you want to call it; e.g.
daddywould work too)For any existing repositories you want to run the following command in the existing repository root (
./.git/config):git config set init.defaultBranch maindaddybranch.Love it.
Yeah, current company has their internal git server default to master and it was a little odd first time I created a new repo. Luckily all the CI templates can recognize either name so I just switched it.
No latest branch









