GitHub要改默认分支名了,你的开源项目受影响了吗?

Stella981
• 阅读 494

GitHub要改默认分支名了,你的开源项目受影响了吗?

晚上浏览GitHub时偶然看到一个项目仓库github/renaming[1],该仓库是GitHub的官方仓库,内容相对权威。

大意是说:GitHub网站上仓库的默认分支是master,为了减少种族歧视,决定更改为main。看起来似乎是不大的改动,实际上牵一发而动全身,是系统性的影响。比如Git工作流、基于仓库的CI/CD、PR等流程。

正因为影响比较大,所以GitHub决定慢慢来,提醒各位开发者不要轻举妄动

GitHub要改默认分支名了,你的开源项目受影响了吗?

GitHub规划的时间线是:

  1. 对于已经把默认分支名改为main的,GitHub会提供支持,把指向原来master分支的链接重定向到新的。尚未改动的,GitHub后续会提供一个工具,帮助开发者尽可能无缝迁移。

  2. 7月31号,GitHub Pages功能支持任意分支,不再局限于master和gh-pages

  3. 今年夏天,GitHub平台将支持默认分支名可配置

  4. 到今年底,GitHub支持开发者修改默认分支名,并且不会影响PR、git clone等操作。

Git

Git是当前最主流的源代码版本管理工具,也是GitHub的底层技术。Git也会在2.28版本中提供新功能,提供init.defaultBranch,用于指定初始化项目时的默认分支名。

开发者首先要把自己的Git升级到2.28以上的版本:

➜  dotfiles git:(master) ✗ git --version git version 2.28.0

然后运行命令git config --global init.defaultBranch main,这样你的git配置文件会出现如下新的配置:

[merge]     tool = vimdiff     log = true [init]  defaultBranch = main

然后我们新建一个Git仓库试试,这时新的分支已经变成main啦:

➜  newbranck git init Initialized empty Git repository in /newbranck/.git/ ➜  newbranck git:(main)

总结

变更默认分支名这个看似简单的功能,却需要产业上下游协同努力,超过半年时间。可见软件开发和项目管理并不容易,这时你还会相信产品经理那句加个按钮,明天完成啊这种鬼话吗?

产品经理的嘴,骗人的鬼

GitHub要改默认分支名了,你的开源项目受影响了吗?

参考资料

[1]

github/renaming: https://github.com/github/renaming

[2]

the Git 2.28 blog post: https://github.blog/2020-07-27-highlights-from-git-2-28/#introducing-init-defaultbranch


我是陆道峰,菜鸡码农,以工程师的视角带你看待这个世界,欢迎关注~

GitHub要改默认分支名了,你的开源项目受影响了吗?

本文分享自微信公众号 - 机器学习与系统(aimlsystem)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

点赞
收藏
评论区
推荐文章
blmius blmius
2年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
Jacquelyn38 Jacquelyn38
2年前
2020年前端实用代码段,为你的工作保驾护航
有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
Stella981 Stella981
2年前
Github仓库master分支到main分支迁移指南
1概述2020年10月1日后,Github会将所有新建的仓库的默认分支从master修改为main,这就导致了一些旧仓库主分支是master,新仓库主分支是main的问题,这在有时候会带来一些麻烦,因此这里提供一种方案将旧仓库的master分支迁移到main分支。2具体步骤四步:
可莉 可莉
2年前
18个常用 webpack插件,总会有适合你的!
!(https://oscimg.oschina.net/oscnet/71317da0c57a8e8cf5011c00e302a914609.jpg)来源| https://github.com/Michaellzg/myarticle/blob/master/webpack/Plugin何为插
Wesley13 Wesley13
2年前
GIT的使用流程
GIT的使用流程1github注册流程1进入github官网:https://github.com/2注册一个自己的github账号3右上角选择Newrepository4进入createanewrepository选择你的仓库名填入:Repositoryname
Stella981 Stella981
2年前
Django中Admin中的一些参数配置
设置在列表中显示的字段,id为django模型默认的主键list_display('id','name','sex','profession','email','qq','phone','status','create_time')设置在列表可编辑字段list_editable
可莉 可莉
2年前
16.Github分支管理
创建与合并分支bitcucket:私有的远程仓库服务Github分支管理!(https://oscimg.oschina.net/oscnet/dbbce40c2a29d6abc3f1a78b7e4f204df8d.jpg)(https://www.oschina.net/action/GoToLink?url
Wesley13 Wesley13
2年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
Python进阶者 Python进阶者
3个月前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这