Github 太狠了,居然把 "master" 干掉了!
前段时间栈长有看到 Github 和 master 分支变更的新闻,当时没有注意细节,直到今天我创建仓库时:
看了半天感觉有点不对劲啊。。。
怎么 master 不见了,之前默认主干分支名称都是叫 master 啊,直到现在我才意识到了这个变更,原来是把 master 变成 main 了。
刚开始,我还有点不愿意接受这个现实,毕竟用了这么多年的 master,养成习惯了,也有感情了,你说变就变...
我本来还想着说不管了,我继续改成用我的 master 吧,后来还是想着用 main 算了,毕竟官方变更应该有它的理由,顺便想着研究下这背后的逻辑。。
1、为什么要变更 master 名称?
关注公众号Java技术栈的朋友应该都知道,今天 7 月份的时候 MySQL 也有类似的举动:《MySQL 宣布停止使用 master、slave!》,MySQL 宣布将 master、slave、blacklist(黑名单)和 whitelist(白名单)等术语分别替换为 source、replica、blocklist 和 allowlist。
这其中的奥秘就不用多说了,在国外,主、从、黑都涉及到种族歧视,所以很多涉及到这些的都被改名了,包括黑人牙膏,所以现在国外很多科技公司也加入了改名的征程也不奇怪了。
2、为什么是 main,而不是其他名称?
抱着学习的精神,我也找到了 Github 的官方改名申明:
Github 分析认为,main 是 master 的最佳替代名称,也是最受欢迎的,因为它能够很好的翻译大多数语言,也因为 main 够短,不用费脑子,凭肌肉记忆就让你见名知义。
如果你想让新建的仓库还是要用 master 或者默认其他名称,也不是不行,可以在设置中修改默认的名称:
设置默认仓库分支名称地址:
3、以前的 master 受不受影响?
从官方的申明来看,以前创建的仓库不受影响,Github 会分几个阶段进行修改,目的是尽可能的减少对现有项目的干扰。
栈长也看了下之前创建好的仓库,主干依然还是 master,所以说之前的并不会受影响,只是新建的默认主干分支名称变成 main 了。
想象下,如果 Github 批量把所有的仓库 master 名称都修改为 main,那势必是一场灾难,因为大家的主干都叫 master,它如果冷不丁的改了,主干的更新、推送就会受到影响,那些依赖 Github 仓库的业务也会受到影响,全球用户众多,所以肯定不敢贸然变更的。
所以,现在不变更也没事,Github 正在研发一款工具,到今年年底,现有的仓库也能够无缝地重命名默认分支了。
一起拭目以待吧,栈长也会持续关注动态,有消息公众号Java技术栈第一时间推送,不要走开。
近期热文推荐:
1.Java 15 正式发布, 14 个新特性,刷新你的认知!!
2.终于靠开源项目弄到 IntelliJ IDEA 激活码了,真香!
3.我用 Java 8 写了一段逻辑,同事直呼看不懂,你试试看。。
觉得不错,别忘了随手点赞+转发哦!
Github 太狠了,居然把 "master" 干掉了!的更多相关文章
- https://github.com/chenghuige/tensorflow-exp/blob/master/examples/sparse-tensor-classification/
https://github.com/chenghuige/tensorflow-exp/blob/master/examples/sparse-tensor-classification/ ...
- 结对项目https://github.com/bxoing1994/test/blob/master/源代码
所选项目名称:文本替换 结对人:曲承玉 github地址 :https://github.com/bxoing1994/test/blob/master/源代码 结对人github地址:ht ...
- https://github.com/python/cpython/blob/master/Doc/library/contextlib.rst 被同一个线程多次获取的同步基元组件
# -*- coding: utf-8 -*- import time from threading import Lock, RLock from datetime import datetime ...
- https://github.com/golang/crypto/blob/master/bcrypt/bcrypt.go
https://github.com/golang/crypto/blob/master/bcrypt/bcrypt.go
- https://github.com/PyMySQL/PyMySQL/blob/master/pymysql/connections.py
# Python implementation of the MySQL client-server protocol # http://dev.mysql.com/doc/internals/en/ ...
- https://github.com/tensorflow/models/blob/master/research/slim/datasets/preprocess_imagenet_validation_data.py 改编版
#!/usr/bin/env python # Copyright 2016 Google Inc. All Rights Reserved. # # Licensed under the Apach ...
- 用swoole实现mysql的连接池--摘自https://github.com/153734009/doc/blob/master/php/mysql_pool.php
<?php $serv = new swoole_server("0.0.0.0", 9508); $serv->set(['worker_num'=>1 ...
- GC 的认识(转) https://github.com/qcrao/Go-Questions/blob/master/GC/GC.md#1-什么是-gc有什么作用
1. 什么是 GC,有什么作用? GC,全称 Garbage Collection,即垃圾回收,是一种自动内存管理的机制. 当程序向操作系统申请的内存不再需要时,垃圾回收主动将其回收并供其他代码进行内 ...
- 盘点 Java 开发 2020 年发生的几件大事,你必须得知道!
2021 年了,在过去的一年 Java 软件开发行业都发生了哪些重大事件呢? 这篇栈长带大家回顾一下,其实在元旦的<滚蛋吧,2020>也略有介绍,这篇就更加详细的总结一下. 1.Java ...
随机推荐
- Palindrome subsequence(区间dp+容斥)
In mathematics, a subsequence is a sequence that can be derived from another sequence by deleting so ...
- js map数据结构
Map 对象保存键值对,并且能够记住键的原始插入顺序.任何值(对象或者原始值) 都可以作为一个键或一个值. map对象常用于保存键值对,它的键是任意数据类型,常用于建立数据的映射关系 和对象的区别: ...
- 07_Python语法示例(基础语法,文件操作,异常处理)
1.写程序在终端输出图形 ######## # # # # ######## print("#" * 8) print("#" + " " ...
- Intersection of Two Prisms(AOJ 1313)
原题如下: Suppose that P1 is an infinite-height prism whose axis is parallel to the z-axis, and P2 is al ...
- oracle之二实例与数据库
实例与数据库 1.Oracle 网络架构及应用环境 看PPT,Oracle结构的基本单元.术语 2.Oracle 体系结构 1)oracle server :database + instanc ...
- python中的一些内置函数
1.布尔类型 2.求和sum 3.取全局变量和局部变量 4.ascii码和字符集 chr().ord() 5.看某个功能下有哪些方法 help(x).dir(x) 6.exec执行python代码 7 ...
- visual studio项目多级引用不拷贝dll的问题
最近碰到一个visual studio项目多级引用不拷贝dll的问题,花了很久查了很多资料,特此记录 A项目引用B项目, B项目引用C项目,C项目引用ef及oracle.ef using Oracle ...
- wsl 修改默认安装路径
如果已经装了,先删除 mklink /j C:\Users\XXXX\AppData\Local\Packages\CanonicalGroupLimited.UbuntuonWindows_79rh ...
- 大写的服,看完这篇你还不懂RocketMQ算我输
目录 RocketMQ介绍 RocketMQ概念 为什么要用RocketMQ? 异步解耦 削峰填谷 分布式事务最终一致性 数据分发 RocketMQ架构 RocketMQ消息类型 普通消息 顺序消息 ...
- [LeetCode]15. 三数之和(数组)(双指针)
题目 给定一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?找出所有满足条件且不重复的三元组. 注意:答案中不可以包含重复的三 ...