Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Honest to God not something I care about but: this is pretty much the nail in the coffin for “master”. I do know some people _did_ care about the name. Sometimes surprisingly senior people who never supported a tech upgrade want the name changed. In any event, it’s done, “main” won, it’s fine, let’s move on.


Maybe they resisted because it was completely ridiculous waste of engineering resources all over the country and for absolutely no tangible reason other than white people trying to feel better about themselves.

I work in the field of film mastering (with countless product names with the word “master” in it) and luckily no one got the ridiculous idea in their head that we need to change this lingo.

Show me a single person who has a valid reason for me not calling my branch “master” or my bedroom “the master”. I honestly think this sort of ridiculing word policing is why we lost this last damned election. And if you’re somehow proud that you’ve renamed your git branches, you’re very likely a contributor to that lost election.


In Microsoft v. AT&T, decision 550 US 437 (2007), there was discussion about a golden disk, and the terminology changed to master disk during the course of the proceedings, because the disk wasn’t actually made of gold.

I remember that Justice Antonin Scalia objected: “I hope we can continue calling it the golden disk. It has a certain Scheherazade quality that really adds a lot of interest to this case.”

<https://www.supremecourt.gov/oral_arguments/argument_transcr...>


what, the golden ratio is not made of gold? have we been betrayed all this time?


The golden rule would deform pretty quickly be useless for measurement.


Wait until you hear about showers


you mean, like baby showers? yeah, totally not what i expected...


This stuff reminds me of what my mother said about feminists trying to get people to spell women with a y. She didn't like it because it made feminism seem like something petty and frivolous.

If I put my tin foil hat on it feels like a psyops to make the left look like a bunch of morons.


Yeah, I mean, isn’t a masters degree even worse, then?


Now I just know why I couldn't get a job. It's because I got a bad and worse degree for two years


a masters degree is about mastery, not about being central/main/leading...


Masters degree is from “magister”, meaning director/chief/boss/leader


wikipedia says: The original meaning of the master's degree was thus that someone who had been admitted to the rank (degree) of master (i.e. teacher)

and

from Latin: magister, "teacher"

teaching requires mastery, not leadership, although the concepts are related because mastery is also good for leadership.

my armchair etymology suggests that master and mastery were closely related until it started to be applied to leadership as well.


Magister means teacher and the things I mentioned. See https://en.wiktionary.org/wiki/magister#Latin


That "waste" of resources was absolutely tiny. Took me just some minutes. And I didn't do it because of DEI, just because I think it's a better name.


Same for me, but kind of because of DEI. Basically, it offended some people, and even if I thought it was a little overblown, it took about 2 minutes to change the default name of future repos to be something else (which was at least as good, and perhaps better). It made some people happier at approximately zero cost to myself, so why not.


Making "some people" happier isn't zero cost if the people in question are intolerant lunatics with ideas corrosive to the social fabric. It's one reason why the pendulum is swinging fiercely in the other direction.


TIL "I'm uncomfortable calling it master-slave, can we do main-replica?" is the idea of an "intolerant lunatic" that is "corrosive to the social fabric".

Good Lord, just listen to yourself.

Red-lined districts still shape America to this day and several red states have been rampant on racial districting to screw minority communities. You can't even pretend the history of slavery is in the past in America.


This is why I left California and utterly done with you people.


I live over 1,000 miles from California, bud.


Yeah that’s how I feel about most progressive stuff - sure it might not bother me, but also changing doesn’t bother me either. It costs you so little to accommodate other people.


I used to feel that way up until about a year ago. At worst I would roll my eyes at the silliness and then move on, because this stuff rarely matters much one way or another.

But then the 2024 elections happened, along with a bunch of exit polls, voter interviews, and other data showing that a surprising (to me anyway) number of people hate this kind of virtue signalling to the point that it can sway their vote. It's very possible those swung votes have ushered in a host of harmful changes that I think do matter a great deal. So now I'm sick of this stuff, it's not only a waste of time it's actively harmful.


Sorry it was exit polls that convinced you not to care about other people so much?

Don’t fool yourself kiddo, you were always an asshole, you were just waiting for the right excuse, just like the rest of us.

The deal with progressive ideology is that it progresses. Fixing inequality, prejudice, and injustice are a lifelong project, because as fast as you address issues, bigots will create new things to be bullies about. You don’t get to just get off at some point and be like “oh okay things seem good enough now.”


Progressive ideology tends to treat moral progress as inevitable, while pursuing social transformation in ways that can undermine the very institutions and norms that make progress possible.


I don’t think it’s true that the culture war issues themselves were the cause of those swayed votes so much as there’s a propaganda machine running 24/7 stoking those resentments and using such cultural critique as fodder.

This works really well to whip people into an othering frenzy to distract them from voting for their own economic interests.


I’d like to see a study showing 1) people aware of this issue and 2) for whom it swung their vote to the right. That’d have to be, what, 10 complete idiots? “Well, I was going to vote for A, but some of B’s supporters asked if I would please be considerate, and that’s a bridge too far.”


Oh, sure, it was people asking for branch renaming.

It wasn't the multiple dedicated Neo-Nazi propaganda networks that call all minorities and immigrants and political opponents enemies of the state.

It wasn't the election of politicians that are actual, convicted rapists and felons who distract by pointing to those who can't fight back.


I have encountered at least two bugs due to the change in names.

Everything considered I invested an hour or more in total. I am pretty sure decades of engineering time and resources were invested over the years because some people didn't like a default globally used for decades.


I dont know, for me main makes more sense so I prefer main. The main branch isn't master of anything, but its the main branch.


> The main branch isn't master of anything

It's master as in "master copy":

A "master copy" is an original version of a work from which other copies are made, serving as the definitive or controlling version


Yah, they are losing something with the name change that they don't even understand because they apparently don't understand the intricacies of English. We would be better off changing it to "Gucci Mane" then we could tag our branches off Gucci's hit singles.It only makes slightly less sense than switching to "main"


But git is a distributed VCS system - there is no master copy. But there certainly is a main branch, which may have many copies on many machines.


That would make perfect sense if all branches had to be made from the default branch.

But they don't.

At `$CLIENT` we use `stable` as the default branch.

Use whatever works for you. Getting upset about a default that you can change is like getting upset about the default wallpaper of your OS.

And before you get all persnickety about that argument working both ways: the developers of git, get to decide the defaults and they did.

If you're so upset, fork it, revert the default branch name and maintain it yourself infinitely. That's definitely worth it just to keep a default branch name you like, right?


> If you're so upset, fork it, revert the default branch name and maintain it yourself infinitely. That's definitely worth it just to keep a default branch name you like, right?

No idea how you got that impression from my comment. It sounds like you're the one that's upset.

I don't care what you name your branches. I do think it's dumb to tell other people what (not) to name their branch though. But definitely not something I feel compelled to rearrange my life over.


Nobody is telling you what not to name your branches.

The people that wrote the software you're using for free, decided to change the default name.

That's it. Nobody has said you can't use whatever name you want.


> Nobody is telling you what not to name your branches.

> Nobody has said you can't use whatever name you want.

This is reductionist. The git people didn't pull this idea out of their butt. It came about because a lot of people were saying that we should not name our branches master.

I have no problem with what the git people did. Easy enough for them to change it, and it puts a dumb issue to bed (for them).

But I think it's fair for anyone to point out that the motivation was dumb, and to explain why it's dumb and how the word "master" is actually not an unreasonable choice in this context.

> Nobody has said you can't use whatever name you want.

Sure, until somebody makes the mistake of not renaming all of their old "master" branches and gets shamed by the word police over it.

Of course you're welcome to disagree.


> how word "master" is actually not an unreasonable choice in this context.

It doesn't even make sense in this context though. The name just got copied from BitKeeper which had master and slave branches.

Git doesn't have that concept.

> Sure, until somebody makes the mistake of not renaming all of their old "master" branches and gets shamed by the word police over it.

How are you going to be shamed? I thought there's nothing wrong with it?


> How are you going to be shamed? I thought there's nothing wrong with it?

If you re-read my comments you will understand that I don't believe there's anything wrong with using the word "master" to name a branch. But other people do, which is why there was an uproar and the default name was ultimately changed to "main".

Not sure how you were able to misinterpret this.


So what's your point?

If you don't think there's anything wrong with it, why would you care if someone else says "hey change this".

Do the same thing you'd do if someone says "hey you should use mongodb it's web scale": tell them you disagree and won't be doing that.

If you don't think there's anything wrong with it, how can you be "shamed" into doing something you disagree with?


I am doing exactly as you say.

I made a comment saying I disagree with the word police and I think it's dumb to cast people as being insensitive for using a longstanding word that makes sense to many people in the context it's used in.


I actually worked in film audio engineering and Master is not the universally used term and hasn't been used uniformly throughout history. I have an analog Mackie mixer from the 2000s with "Main" as the name of the Main Bus that was designed before the whole debate took part.

As far as software goes, things are similar. The process of "Mastering" is an exception.

As far as git branches go, I am fine with main. It has two advantages over master aside from any culturual questions:

1. main is more self-explanatory for beginners who don't know how "master" was/is used in tech.

2. it is shorter. While two letters don't make a huge difference, that is still a subtile advantage.

Whether these two points alone are enough to justify the needed work (which is probably not a lot to be honest), IDK.


Makes sense when you release 3.0 and basically allowed to introduce breaking changes.

In tech field there's lots of people living on the very fringes of society, hidden away behind keyboard.


Every time I push to master I get this song in my head

  Master! Master! 
Every time I push to main I have in my head:

  ...meh


Master of Puppets -- Metallica

To be fair, the song is about control and the abuse of power.


I heard that it's about drugs controlling you


you can call your branch whatever name you want. nobody cares, nobody is stopping you.


That was true before the 3.0 release. Why didn't the people offended by "master" just change the branch name? Because it was never about their own branch names. It was about everyone else's.


> Maybe they resisted because it was completely ridiculous waste of engineering resources all over the country and for absolutely no tangible reason other than white people trying to feel better about themselves.

I think the resisting probably wasted more time than anything else.

We used the occasion to ensure that there was no hardcoded naming in our IaC, internal tooling and CI/CD. It was surprinsingly easy, gave us a great excuse to do some much needed clean up and now everything can work with any branch used as the main one.

Was it extremely important? Probably not. Was it worth fighting against/having a stong opinion about? Probably not either.

Sometimes, it's easier to just go with the flow and try to turn things which seem meaningless into actual improvements. If it makes the people who think it's not meaningless feel better, well, even better. It surely didn't cost me much.


That "waste of resources" is completely made up, this changes nothing for any existing repo what so ever. Any existing repo that updated did so completely voluntarily, no tool forced them to.

At most you could argue that you needed to run one additional command when pushing the initial commit during this transitional period where GitLab/GitHub had updated the name but Git itself has not. Therefore, now we're back to square one with less "waste" as you put it.


Not at all. This is just about defaults. People can still choose arbitrary branch names. People can still set the default branch name, as I have:

  [init]
      defaultBranch = master
I just think "master" is an awesome word. Master record. Mastering. It just sounds cool to me and I'm gonna keep using it.

I also think "main" is a stupid word that doesn't say much about anything. I even hate "main" functions.


Tip: the next time you need to name a function, don't use "a stupid word that doesn't say much about anything". That's not how you're supposed to name stuff in programming. :)


In that case, I think 'git' is probably the name we should have been looking to replace...


It's hard when compilers force you to use "main".

  int main(int argc, char **argv);
I once wrote a liblinux library for Linux software development with freestading C. One of the things I did was replace the "main" function with a "liblinux_start" function.


Ada compiler does not force to use main


That's just the default. Nobody stops you from specifying `gcc -Wl,--entry,foo`.


Standard C stops you. The C standard library is hardcoded to call the main function. Providing one's own ELF entry point also breaks libc initialization unless the exact same startfiles are used.

Freestanding C gets rid of the libc so that's not a problem.


Maybe you could also do some runtime linking trickery when dynamically linking libc?


The libc could easily add support for such a thing but I doubt they'd care enough to. They'd probably see it as adding complexity for zero gain.

I submitted an issue to the GCC bugzilla about renaming certain symbols generated by compiler.

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113694

I don't know how to implement it and nobody else cared enough to.


It's one of those things I couldn't care less about what it's actually called as long as it's uniform everywhere.

I had a few frustrated evenings of debugging when Github changed the default to main and my local scripts expected "master".

All fixed now, but still an annoyance. Don't think about it much anymore.


Some of your scripts could possibly use `origin/HEAD` and reflect whatever origin thinks is the default branch. (Though obviously that assumes you always have an `origin` remote or something remote-like.) Including using the commit referenced by `origin/HEAD` to find the `origin/{branch-name}` that matches if you want a name to check locally.


PSA: You can run one git command and ignore this change and associated drama entirely. I don't care which you prefer, but let's not pretend like main "won" when sticking with master is as easy as:

    git config --global init.defaultBranch master


To be fair, ignoring the drama is just adapting to changes, which is crucial in this field. Our old repo defaulted to master, our new ones defaulted to main. No time was spent on bike shedding.


This has been the case on nearly every open source and proprietary project, I have worked on.

Most people do not care and will stick with the old default on old projects and use the new default on new projects. Occasionally, it stokes conversations around possible third options that are more descriptive like stable or development, but the norm is to just go with the default.

Going out of your way to set the default to the old name really reeks to me of slacktivism. People probably think that they're taking a stand, but in actual fact others will just assume that your repository is older or that you have an old configuration.


I did this the first time git asked me, because getting asked every time would get annoying.

Glad it's going back to having a default and not asking.


git config --global init.defaultBranch default

Because Mercurial is using default as default, and if we have to resort to worse SCMs, let them behave like Mercurial anyway


main won




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: