世界上有两个非常大的 Hub 站点,一个是全球知名的学习网站,而另一个就是有着同性交友网站之称的 GitHub
GitHub 成立于 2008 年,由三位创始人搭建起的一个代码协作平台,让技术人员可以分享代码同步进度,这一习惯深深地影响了计算机世界的发展,开放代码拥抱开源成为了计算机时代的主题
- 截止目前为止,超过 2800 万开发者在上面建了 5700 万个代码仓库。
微软向来是被视作封闭的代表,其创作的 windows 系统以封闭源代码著称,和 Linux 系统(世界上最大的开源操作系统)站在一起显得格格不入。
![]()
在 CEO 纳德拉 2014 年上任之后,改头换面开始了开源代码的开发与投入,2016 年,微软贡献了超过 16000 个项目,成为 GitHub 上最大的贡献者,其中知名的 VSCode 就是微软的手笔,尽管如此,程序员们依然秉持着对微软的刻板印象,认为其是不懂开源食古不化的老古董。
直到有一天,微软竟然干了这件事,在技术界掀起了巨大的涟漪
2018 年 6 月,微软:我宣布,75 亿美元买下 GitHub!
![]()
对于 GitHub 栖身于微软的决定,一部分人表示不解,还有更多人直呼糟糕,当然也有少部分人乐开了花。
直呼糟糕的原因是,从微软的收购历史看,Linkedin、Skype、诺基亚,每一个大型收购之后原来的企业都日渐式微,所以从历史发展的角度看,自然这次 GitHub 也难逃厄运
![]()
乐开了花的就是 GitHub 的竞争对手 GitLab,直接推出了一键迁移按钮,鼓励大家呼朋唤友的来我这儿玩吧!
![]()
一键迁移
时隔近三年之后,在 2021 年的今天,我们再来回顾当年这桩收购“惨案”,是微软摧毁了 GitHub 以及其开源生态,还是微软和 GitHub 互相成就,且听我娓娓道来
1开放私有仓库
2019 年 1 月,被微软收购的 GitHub 犹如新婚的小娇娘,从闺房中走出来宣布一件大事
- 新的一年,新的 GitHub:正式宣布开放无限制创建私有存储库,并开始提供统一的企业版 GitHub 服务!
![]()
在微软收购前,GitHub 依靠提供企业级私有仓库服务营收,所以私有仓库仅对付费用户开放。
微软拥抱 GitHub 之后,迅速的开放私有仓库存储能力,不仅令开发者欣喜若狂,尤其是对于小型企业的开发者,无异于打了一针兴奋剂,不付费即可体验企业代码托管服务,大大节约了企业自建平台的成本,于是乎...
![]()
微软想做的仅仅是开放私有仓库,为开发者提供代码托管服务这么简单么?
2GitHub Action
2019 年 12 月,GitHub 正式开放 GitHub Action功能,这一功能简直让开发者们大快朵颐。
什么是 GitHub Action 呢?
- 简单来说就是 GitHub 提供了无数台服务器,开发者可以让自己想执行的功能在上面跑,并可以结合代码提交的周期进行测试、集成、部署等一站式服务,而这一切全部是免费的!
这个功能意味着什么呢?意味着对于即便是三四个人开发的小团队,也可以享受如腾讯、阿里这些大公司所拥有的技术基础建设服务,类似于腾讯内部的蓝盾、orange-ci 等
而由于 GitHub 开源生态的影响,还会带来很多大公司内部都无法拥有的大量的自定义 action,比如图片压缩、electron 多平台打包(包括 mac 系统)等
![]()
GitHub Action 列表
至此,GitHub Action 结合私有仓库,基本垫定了 GitHub 成为了中小开发团队协作最佳平台!让开发者自由飞翔!
![图片]()
3Codespaces
微软说:你以为 GitHub 仅仅是代码托管平台么?
2020 年 5 月,GitHub 推出了名为Codespaces的云端 VSCode,并宣布处于 Beta 测试阶段,欢迎用户进行申请
![]()
云端 VSCode
简单来说,这款工具就是告诉了开发者们,不用打开电脑在 GitHub 上可以直接写代码啦!用的还是全宇宙最强的编辑器 VSCode!
经过笔者亲身体验,这个功能是真的舒服,如果排除墙的因素,可以说是一个让开发者深爱的功能
1. 集成度足够高
首先进入 GitHub 找到任意一个项目,有 Beta 权限的用户点击 code 之后会发现多出来一个【Open with Codespaces】选项,Codespaces 就是 GitHub 云端 VSCode 的产品名称
![]()
2. 编辑器足够完成
新建云端编辑器之后,初始化完成后就可以看到完整的开发环境了,整体布局和 VSCode 几乎一模一样,VSCode 可以使用的插件在这里都能找到!
![]()
3. 云端服务器资源足够充足
硬盘空间:180GB
![]()
CPU:2 核
![]()
内存:4GB
![]()
操作系统:Ubuntu
![]()
4. 开发环境足够全面
开发服务器在配置充足的情况下,开发环境完全不需要安装,常用的 node、python、java、go 这些语言全都有!
![]()
gcc、mvn、gradle 这些也都不在话下,都不用自己安装直接用就行!
![]()
5. 真的能在浏览器上面开发!
首先打开一个前端项目,执行指令安装开发包并启动项目,点击访问开发地址
![]()
该功能虽然目前还未正式对所有社区成员公开,但是可以预见将会吸粉无数
4GitHub Discussion
除了上述功能之外,GitHub 在 2021 年 3 月,开放了 GitHub Discussion 功能
![]()
该功能对于团队成员讨论、社区成员讨论无异于增加了更好的选择,目前该功能处于 Beta 中,可以期待未来更多的能力
结合之前已有的Projects、Wikis、Pages、Actions这些功能,提供了完整的看板、讨论、文档、页面和自动集成与部署功能
可以说对于小型开发团队来说实在是开发利器,无懈可击
![]()
5开源对于小型企业的意义
上面所讲的大部分都是微软收购 GitHub 后,为 GitHub 付出的努力,但是作为商业公司,付出了如此大的代价,肯定不是为了做慈善,商业逻辑又是什么呢?
一句话概括:开源社区和企业服务对于中小型企业的意义重大!
很少有行业会愿意分享自己的一部分核心技术,并通过这种方式去验证自己产品的可行性
但是互联网行业与其他行业在这方面有很大差别,分享源代码验证产品对于用户的吸引力是屡见不鲜的情况
这种情况在计算机领域的称谓就是开源,在当前的时代背景下,对于小型企业来说,通过开源部分代码吸引忠实用户,并推出商业版工具,加强用户粘性,这种模式屡见不鲜
GitHub 孕育了一大批中小团队的产品,其中诞生了非常多世界顶尖的技术产品
- 开源不代表免费,不代表可以随意抄袭。从开源中来,一步步走向商业化,是目前很多技术人创业的新思路
6开源与云计算
GitHub 开放私有仓库,提供 GitHub Action,提供云端 Codespaces,这些无一不需要服务器的资源支撑
而人们往往容易忽略的一件事情是:微软是世界上第二大公有云服务厂商
![]()
公有云营收占比
从图中来看,2020 年 Q4 季度亚马逊占据了全球 32%的营收,而微软的 Azure 紧随其后,占据了 20%的营收份额(Office365 出了很大的力)
所以很显然,GitHub 的服务器资源,全部依托于微软的 Azure 之上,GitHub 有多好用,那么微软的云服务就有多可靠
GitHub 作为同性交友网站,表面上看是 toC 的业务,实际上潜藏着巨大的 toB 商机
7GitHub 的未来
“好了,我都做了这么多了,米娜桑该给我一些回报了”,微软深情地拉着 GitHub,向众人说道。
![]()
微软的云服务既然如此好用,你们也都看到了,不妨在 GitHub 仓库里面加个服务器管理按钮,你们买了微软的云服务器之后,可以一键式管理,连终端都可以在云端使用,多方便!
买了云服务器,云数据库也不错,还有对象存储,CDN 也很好...
【以上纯属猜想】
8小结
国内的开源平台和代码托管平台始终无法与 GitHub 相媲美,Gitee、开源中国、coding.net 都有着很大的距离
但是像小程序一类的应用程序开发,属于国内独有的生态,在国内有着很大的成长环境,也许会有助于国内开源平台的发展
将开源与云服务相关联,为中小企业提供 toB 服务,GitHub 的成长思路可以作为云服务发展的借鉴,能够开出不一样的花朵