I am a middle-aged white man working in tech. I can afford to spend my spare time working on open-source projects. I am privileged.
A few days ago, I spent two hours renaming the default branches of the repositories in the
@ergebnis organization from
For a brief moment, I was considering the consequences of renaming the branches - for contributors and users. I don’t know if anyone will be affected by the rename, but for what it’s worth: when a user been affected, then they are still alive. A renamed branch or broken build is only a minor inconvenience compared to being harassed, beaten up, or choked to death because of the color of your skin.
If you encounter any issues because of the renaming, I apologize. You will get over it. If you think this change was unnecessary, think again.
I am not alone. Friends and neighbors in the PHP and the entire software development community have made efforts in the last weeks, months, and years to acknowledge the use of offensive terminology, and have started to rename things.
Naming is hard. Renaming things is easy.
✊🏿 Black lives matter.
It's a great idea and we are already working on this! cc @billygriffin22— Nat Friedman (@natfriedman) June 12, 2020
Our team at @GitHub just changed our project's main branch to `main`! We're not the only ones, and there's growing momentum to change the default across the company. 😱 It's no defunding the police, but it's nice to see progress against such entrenched practices.— Lucas Garron (@lgarron) June 11, 2020
I picked the names "master" (and "origin") in the early Git tooling back in 2005.— Petr Baudis (@xpasky) June 12, 2020
(this probably means you shouldn't give much weight to my name preferences :) )
I have wished many times I would have named them "main" (and "upstream") instead.
Glad it's happenning @natfriedman
- Moore, Robert B. 1976. Racism in the English Language: a Lesson Plan and Study Essay. New York, NY: The Racism and Sexism Resource Center for Educators.
- “High-Tech Gripe Makes PCs More PC.” 2003. The Sydney Morning Herald. The Sydney Morning Herald. November 27, 2003. https://www.smh.com.au/world/high-tech-gripe-makes-pcs-more-pc-20031127-gdhv7x.html.
- “'Master' and 'Slave' Computer Labels Unacceptable, Officials Say.” 2003. CNN. Cable News Network. November 26, 2003. http://edition.cnn.com/2003/TECH/ptech/11/26/master.term.reut/.
- Baudis, Petr. 2005. “Added git fork, which will create a new branch in a given new directory, with the object cache shared with your current branch. The "first" branch originating from the object cache is called "master". git/HEAD is now just a symlink to .git/heads/$branch.” Public Git Hosting - Cogito.git/Commit. April 16, 2005. https://repo.or.cz/cogito.git/commit/3c4347c8b64fb516bc097ab174c3247113b7603d.
- Torvalds, Linus. 2005. “Re: kernel.org and GIT tree rebuilding.” June 25, 2005. https://marc.info/?l=git&m=111968031816936&w=2.
- Eglash, Ron. 2007. “Broken Metaphor: The Master-Slave Analogy in Technical Literature.” Technology and Culture. Johns Hopkins University Press. May 21, 2007. https://muse.jhu.edu/article/215390.
- Wright, Derek. 2008. “Rename ‘Master/Slave’ Terminology to ‘Client/Server.’” Drupal.org. December 5, 2008. https://www.drupal.org/project/project_issue_file_review/issues/343414.
- Curella, Flavio. 2014. “Replace Occurrences of Master/Slave Terminology with Leader/Follower.” Django. May 20, 2014. https://code.djangoproject.com/ticket/22667.
Hansson, David Heinemeier. 2018. “Replace use of whitelist with allowlist and blacklist with denylist · Issue #33677 ·
rails/rails.” GitHub. August 22, 2018. https://github.com/rails/rails/issues/33677.
- Knode, Mallory, and Niels ten Oever. 2018. “Terminology, Power and Oppressive Language.” IETF Tools. October 22, 2018. https://tools.ietf.org/id/draft-knodel-terminology-00.html.
- Knode, Mallory, and Niels ten Oever. 2019. “Terminology, Power and Oppressive Language.” IETF Tools. March 11, 2019. https://tools.ietf.org/id/draft-knodel-terminology-01.html.
- Nocera, Bastien. 2019. “Re: Replacing ‘Master’ Reference in Git Branch Names (Was Re: Proposal: Replace All References to Master/Slave in GNOME Modules).” Gnome Desktop Devel Mailing List. May 4, 2019. https://mail.gnome.org/archives/desktop-devel-list/2019-May/msg00066.html.
Campbell, Graham. 2020. “[1.10] Replace whitelist with allow list by GrahamCampbell · Pull Request #8957 ·
composer/composer.” GitHub. June 7, 2020. https://github.com/composer/composer/pull/8957.
- Hanselman, Scott. 2020. “Easily Rename Your Git Default Branch from Master to Main.” Scott Hanselman. June 8, 2020. https://www.hanselman.com/blog/EasilyRenameYourGitDefaultBranchFromMasterToMain.aspx.
- Brzuchalski, Michał Marcin. 2020. “PHP RFC: Change Terminology to ExcludeList.” PHP. June 9, 2020. https://wiki.php.net/rfc/change-terminology-to-excludelist.
Gamez, Jérôme. 2020. “The default branch of
kreait/firebase-phphas been renamed from
main.” Twitter. Twitter. June 9, 2020. https://twitter.com/jeromegamez/status/1270276881468862464.
- O'Leary, Brendan. 2020. “I Was Wrong.” Brendan O'Leary. June 10, 2020. https://boleary.dev/blog/2020-06-10-i-was-wrong-about-git-master.html.
Thompson, Billie. 2020. “
PurpleBooth/change-github-default-branch.sh: Quickly change your GitHub repositories default branch something else.” GitHub. June 14, 2020. https://github.com/PurpleBooth/change-github-default-branch.sh.
Heap, Michael. 2020. “
mheap/github-default-branch: Rename your default branch on GitHub.” GitHub. June 15, 2020. https://github.com/mheap/github-default-branch.
- Lima, Daniel Rodrigues. 2020. “About the use of the terms master/slave and blacklist, proposal to replace.” Externals - Opening PHP's #Internals to the Outside. June 15, 2020. https://externals.io/message/110515.
- Knode, Mallory, and Niels ten Oever. 2020. “Terminology, Power and Oppressive Language.” IETF Tools. June 16, 2020. https://tools.ietf.org/id/draft-knodel-terminology-02.html.
- Martynus, Gregor. 2020. “Rename Master Branch - Resources about how and why to rename the "master" branch in git.” GitHub. June 17, 2020. https://github.com/rename-master-branch.
- Boggiano, Jordi. “Composer and Default Git Branches.” Private Packagist, Private Packagist, 19 June 2020, https://blog.packagist.com/composer-and-default-git-branches/.
- Knode, Mallory, and Niels ten Oever. 2020. “Terminology, Power and Oppressive Language.” IETF Tools. July 8, 2020. https://tools.ietf.org/id/draft-knodel-terminology-03.html.
- The GitHub Blog. “The Default Branch for Newly-Created Repositories Is Now Main.” The GitHub Blog, October 1, 2020. https://github.blog/changelog/2020-10-01-the-default-branch-for-newly-created-repositories-is-now-main/.