Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
[dupe] GitHub to Remove 'Master' Terminology (telegraph.co.uk)
33 points by akrymski on June 15, 2020 | hide | past | favorite | 63 comments


Several discussions here in the past few days:

https://news.ycombinator.com/item?id=23500093 (138 points/224 comments)

https://news.ycombinator.com/item?id=23518123 (127 points/206 comments)

https://news.ycombinator.com/item?id=23519813 (44 points/84 comments)

https://news.ycombinator.com/item?id=23522859 (15 points/5 comments)


I'd prefer it if things didn't change, including master/slave terminology (the 'master' branch doesn't even have a 'slave' in git...)

Have the words themselves become bad to use? It seems that this is a USA centric view anyway with its history (and even then it seems ridiculous--why can't these things be compartmentalised as technical terms?)

Slavery certainly still exists in the world, and has existed in most places at some point. Should we rename 'slavery' to something else too while we're at it? Or forget it exists and existed?

Certainly certain terms become antiquated over time, like the vocabulary used in Emacs (yank/buffer/etc vs cut/window/tab/...), but master/slave doesn't seem to be there yet.

I wonder if there's some way to counteract this newspeak stuff? I think it's harmful that these things happen for such frivolous reasons. Does one just have to be as loud as the minority that drives these things, to counteract it?


I think companies are just looking for ways to help, and this is what Github came up with.

I agree it's an odd reason for the change. The word "master" without "slave" has many meanings, usually but not always when one person or thing controls another.

It's used for dog owners ("a dog and his master"). A person can be the "master of their own fate" or a "master of disguise." Seinfeld joked about people being "masters of their own domain."

All of that said, I don't really mind the result, whatever the reason. I remember that the name struck me as odd when I first started with Git.

I assumed it came from "master copy," which in media is the copy from which other copies are made. But that doesn't really fit, in my view, because the whole point of a master copy is that it doesn't change. In Git the master is always changing.

The other meanings don't fit either. The "master" branch doesn't really control anything, it is controlled by the user.

So calling it "master" never really made sense to me. It seems like "primary," "main," "central" or a similar word fits better.


> I think companies are just looking for ways to help, and this is what Github came up with.

Help how exactly?

This to me seems like a PR preemptive measure not to be caught in some zealous virtue signalling.

> So calling it "master" never really made sense to me. It seems like "primary," "main," "central" or a similar word fits better.

That was always me feeling too.


I am black and I don't think I have ever given a thought to this. While the change might be well meaning, I truly resent the implications.

Go out into the world and train under-privileged folks on what they would need to be github employees in future that you would hire without a second thought independent of special 'diversity' mandates. Do more of that instead of focusing on trivial bs like master/slave.


Exactly.

'master' as used in git doesn't at all imply 'slave', but instead 'definitive'.

The real problem will not be solved by newspeak naming, but by actually giving genuinely equal opportunity to everyone, and perhaps more importantly, the means and environment to take up that opportunity.


All this 'removed' terminology is double standard. The entire name of the "git" project is offensive.

From wikipedia [1]

Git is a term of insult with origins in English denoting an unpleasant, silly, incompetent, annoying, senile, elderly or childish person.

GitHub - hub for gits (persons).

[1] https://en.wikipedia.org/wiki/Git_(slang)


master is far more offensive especially in the United States


Are you offended the idea of a master key or say, mastering C++? Remastered albums?


Researching all that is surely somebody's Master's Theses.


more people are offended by the word master than git, I still don’t think it was a good comparison, also the connotation of Master Theses, mastering C++, remastered album is also much different.


I've got to admit that "main" makes a lot more sense. It's the main branch where all commits are collected before getting deployed, it's not a master that bosses all the other branches around.


You're thinking of the wrong definition of master. Git's master refers to the primary copy of something from which derivative copies are made. E.g. In casting, a master is used to form new molds[1]. In audio engineering, a master tape holds the final mix of a recording[2]. (Incidentally, this is where the term remastering comes from, because you are creating a new master version.)

1. https://www.instructables.com/id/Two-Part-Silicone-Casting/ 2. https://en.wikipedia.org/wiki/Mastering_(audio)


I keep seeing this stated as fact without any citation whatsoever.

Here's an argument with citations that the term "master" in the git context does indeed come from the master/slave terminology:

https://mail.gnome.org/archives/desktop-devel-list/2019-May/...


That's where I assumed "master" came from. But it still doesn't fit, because a master copy is normally static. The master branch in Git is anything but static.


> because a master copy is normally static

That depends on the time scale you are considering.


Why not use "primary" then? In database terminology primary and replica are quite common for instance.


I also think 'main' branch makes more sense, but GitHub is breaking away from an entire collective body of tutorials out there that already reference the 'master' branch. All for the sake of PC and a knee jerk reaction to a recent event. What will people think of this change 5 years on?


I think in 5 years everybody will be used to it. Tutorials will have changed by then and everybody will eventually forget that this was ever an issue.

I'm don't think it's a necessary change, but I also don't think it's a harmful change.


GitHub is not Git.

If the Git cli tool still initializes a new repo to 'master', I'm not going to go out of my way to rename it before I push to GitHub.

I haven't seen any discussion around changing the Git cli tool.



I don't think git bans you from using a master branch, does it? It's just that their default has changed. But any other branch name will still work.


> it's not a master that bosses all the other branches around

That's not the only sense of the word "master". There are several, but the one used in git's case is that of a copy or instance from which all other copies are made.


Master copy also makes sense, I admit.


Oh we are going to hear a whole lot of after the fact rationalizations for this as folks pretend there was only ever one meaning of master


>I had actually started with "default", and was told it might be triggering for folks in financial trouble? I don't actually have an opinion myself

https://github.com/git-for-windows/git/issues/2674#issuecomm...

You can't make this shit up


I don't really care much about what the branches are named at the end of the day. However, I do find it concerning that we're so bothered by appearances that a term of art in multiple industries is being made to appear unsavory (and considering the general tone of the comments I've seen, it seems that is also manufactured dissent.)

If we had a master/slave situation going on I could understand an uproar. However, it's really the 'Master' copy, which basically means 'Original' or 'Source of truth'

I totally agree with Kingh32 from the reddit thread posted by another commenter below. This whole thing seems like a distraction so we can feel good about changing something without having to actually solve any hard problems or make any substantial changes.



As long as they don't rename branches silently, I don't really care what something is called.


Why not "trunk"? Seems like the obvious choice to me.

* it's a tree structure, trunks are the "main" branches of trees

* trunk was used commonly in svn before git stormed the scene


Yes, this is far more accurate terminology as well. That's something I would have thought HN would value.


HN is selectively conservative based on, apparently, career length.


Trunk also means "a person's or animal's body apart from the limbs and head" which is clearly body shaming of amputated people so don't use that.

/s


This change means that sufficient nagging on popular social networks can bully entire companies into submission. Where do we draw the line between technology and being offended?

The whole notion of "we are doing it to fix things" is a lie. Changing words that mean something in technology does absolutely nothing to fix the underlying problem - hatred.

The cheapest way to buy yourself conscience is to sit at home and do absolutely nothing of value, but to appear as if you "care". This is precisely what changing terminology does - it buys companies conscience.

Thanks to everyone who contributed to this noble cause, I just can't wait to invest yet more time to fix all the problems caused by naming change. And yes, there's us who deal with software not working when you rename a branch. Telling me it was already broken if naming change breaks it - thanks, it magically makes it go away.

There's a huge number of us who work in maintenance field and we can't construct or design systems to satisfy every possible great practice out there - namely, we inherit old, crappy systems that no one wants to deal with and work on and we make them run.

Changing something that worked under false pretense of doing it for greater good - while jeopardizing entire jobs because of failing software - has anyone given it any thought?

Sure, someone you never saw is not offended any more by a naming convention in a field they never interacted with. But I'll be there, with many of my coworkers fixing older systems on the fly, praying nothing goes down at the wrong moment, enabling the ones who depend on that software to do their work.

While I understand the motivation behind this.. let's call it movement - I can't understand that very little thought has been given to consequences and to who will suffer because of the changes.


Also relevant : http://antirez.com/news/122

Response from Redis developer regarding master-slave terminology.


It's just... unnecessary.

BTW I think now, I know why Tom Bombadil didn't appear in the movie!

    Old Tom Bombadil is a merry fellow, 
    Bright blue his jacket is, and his boots are yellow. 
    None has ever caught him yet, for Tom, he is the MASTER: 
    His songs are stronger songs, and his feet are faster.


I never thought adding colors to emojis were useful. They just added race to it.


Where is GitHub's announcement about this? (Does it exist?) I can't find anything on this and I'd like to know more about what exactly is going to go down.


Sounds risky; surely this will break a lot of systems.

How is this rolled out? Are existing repos affected?

Can I keep using "master" if I choose to?


Absolutely ridiculous.


That's the point of view of the silent majority, but the mob makes the rules at the moment.


Who says it’s the silent majority? The loud minority are those who keep bitching and moaning imo


> Who says it’s the silent majority? The loud minority are those who keep bitching and moaning imo

Yeah, they're the ones bitching and moaning all of the loot out of the stores.


Why?


Because if you go after "words that may be considered offensive in some context" you'll end up with a very limited vocabulary.

Where I'm from, the word "collaborator" is universally associated with collaborating with either the communist regime or the nazi occupant. Does it make the word bad? Should github change it to something else? Look beyond your own culture and you'll soon find that no word is safe to use.

Also, isn't Github still helping ICE build concentration camps for kids? And yet the hypothetically offensive meaning of "master" is where they draw the line?


Because it’s an unnecessary breaking change.


It’s not a breaking change.


... uh, yeah, it is.


Nope. Any third party software that assumes a “master” branch always exists and is always the main branch was already broken.


It's not broken. It just works under assumptions applicable to the most common use cases. I know that a software engineer will sneer about dependencies of this kind, but such assumptions really simplify reality/software/whatever.

And yes, they are a pain in the ass when it comes to changes and that's why one should be careful with unnecessary changes.


[flagged]


Maybe it's an unpopular opinion but I really don't think it is. It's a descriptive term. You'd need to also change the name of the Masters tournament and masters degree while we're at it, along with anything else that uses the term master.

Master/slave client terminology on the other hand is definitely racist. Something like primary/ auxiliary would probably be better.


Slavery isn't always racist, by the way. Sometimes it's religious or nationalist. Since we're talking about context, it's good to understand the enormous range of people who could be offended by seeing slavery references at work.


> it's good to understand the enormous range of people who could be offended

Again, possibly another unpopular opinion, but there really is a huge range of things people are offended by and there will always be people being offended by something. If you keep removing things that people are offended by then there's not much left.

Granted there's a line, but I don't think this meets that threshold.


I think we need to get to the point where the term “racist” is not used as a generic catch-all for anything race-related.

In this case, the argument is not that the term “master” is inherently racist. This term has a vast number of legitimate and completely non-racial usages throughout the English language.

Rather, the argument is that in this case the term tends to remind folks of slavery, and that is an uncomfortable thing to be reminded of. That doesn’t mean the term is now “racist”.

Now, why folks feel reminded of slavery due to this usage but not the countless other usages of the term is not something I personally understand. I don’t think of slavery when I hear the term “master’s degree”, and I don’t think of slavery when I hear the term “master branch.” But it’s not really my place to take issue with what terms in which contexts call to mind slavery for other people.

I do think it would be useful to do some surveys and figure out if this is something that is actually common before making such a widespread breaking change.


> But it’s not really my place to take issue with what terms in which contexts call to mind slavery for other people.

That's all you had to know.

> I think we need to get to the point where the term “racist” is not used as a generic catch-all for anything race-related.

You should understand that this supports racist ideas and policy when you say it. Edit: unless you mean "in another 400 years after we've made radical policy changes"

Edit again: I can't reply bc posting speed limits and the balance of racism/antiracism in HN threads, so please go read e.g. "How to be an Antiracist" and you'll see where I'm coming from.


I don’t really understand what point you’re trying to make. I don’t find it helpful to apply “racist” unthinkingly as a blanket term that encompasses anything and everything race-related, and I cannot agree with you that my post in any way supports racist policies.


The "master/slave" in databases does indeed build on the racist metaphor. But is the etymology of the "master branch" the same?

For example in the term "master's degree" the word master clearly retains a stronger link to the original etymology of "Magister", teacher.


From 2 days ago (138 points, over 200 comments), and yesterday (126 points, over 200 comments)


I hate when corporations are like "how can we pretend to care without doing anything of substance".

I know that some asshole with a fountain pen in a board room came up with this idea.


Master and servant would be ok I guess.


I'm honestly surprised it has taken this long. I was uncomfortable with the phrasing back in 99 when studying for my A+ exam.


Why?


For those saying that "master" as used in git has nothing to do with master/slave: Git was made to replace bitkeeper which had (has?) the concepts of master/slave repositories:

https://github.com/bitkeeper-scm/bitkeeper/blob/master/doc/H...

https://mail.gnome.org/archives/desktop-devel-list/2019-May/...

Edit: to those down-voting ... keep hitting the down arrow, maybe reality will go away and you won't be inconvenienced by it anymore.




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

Search: