likes
comments
collection
share

Github无处不在

作者站长头像
站长
· 阅读数 3

程序员想必没有不知道Github网站的吧,号称为全世界最大的同性社交网站。 从2007年10月开始开发,2008年2月上线第一个beta版本,4月正式上线了正式版本,细算起来到现在快近14年时间了。这期间Github在产品上增加了star、fork、wiki、follow、sponsor等社交元素,乘着开源的东风,已然成为了当前全球属于程序员最大的基友社区。

Github现在越来越火,已经有非常多的人从这个细分领域出发,吸引了非常多的关注量,最终将流量引入公众号中变现。

更新比较频繁的有HelloGitHub,每月更新一次,从更新的期数来看,已经持续做了5年左右了。

Github无处不在

还有GitHubDaily,在知乎上的文章也比较多。

Github无处不在

另外,如果你在微信中搜索Github,能够看到大量以此命名的公众号。

Github无处不在

汇聚了各种信息的Github是一个巨大内容来源,许多将Github上的东西搬到知乎,CSDN,知识星球等,以此来吸引用户。

Github到底是怎么发展过来的呢?

Git的诞生

在讲Github怎么来的之前,必须要说Git的诞生,因为Github建立之初的目标就是为了让Git使用起来更加的方便。

Git是一个分布式版本控制软件,最初由林纳斯·托瓦兹创作,于2005年以GPL发布。最初目的是为更好地管理Linux内核开发而设计。

林纳斯·托瓦兹在开源linux内核之后,一直缺少比较好用版本管理工具。自2002年开始,林纳斯·托瓦兹决定使用BitKeeper作为Linux内核主要的版本控制系统用以维护代码。因为BitKeeper为专有软件,这个决定在社群中长期遭受质疑。在Linux社群中,特别是理查德·斯托曼与自由软件基金会的成员,主张应该使用开放源代码的软件来作为Linux核心的版本控制系统。林纳斯·托瓦兹曾考虑过采用现成软件作为版本控制系统(例如Monotone),但这些软件都存在一些问题,特别是性能不佳。

2005年,安德鲁·垂鸠写了一个简单程序,可以连接BitKeeper的存储库,BitKeeper著作权拥有者拉里·麦沃伊认为安德鲁·垂鸠对BitKeeper内部使用的协议进行逆向工程,决定收回无偿使用BitKeeper的许可。Linux内核开发团队与BitMover公司进行磋商,但无法解决他们之间的歧见。林纳斯·托瓦兹决定自行开发版本控制系统替代BitKeeper,以十天的时间,编写出第一个Git版本。至今,Git的核心逻辑都没有明显的变化。

和集中式的CVS、SVN不一样,Git并不一定需要一个服务端的控制软件,就能进行版本控制,不会涉及到权限问题,网关问题和其他低效问题的困扰。每一个Git端都是一个完整的源代码版本控制库,这样软件的发布、交流等就非常方便,而且速度极快。

Git的出现给开源社区带来了翻天覆地的变化,开源免费的分布式的版本控制系统,让上万人的合作成为了可能。之前使用集中式的版本控制,记录的是版本之间的变化值并且还需要处于良好的网络状态下才能够提交代码参与协作。Git每一次提交都是都个文件完整的快照,使用计算出来的hashCode作为当前的版本号。

Github的诞生

GitHub平台于2007年10月1日开始开发,由GitHub公司(曾称Logical Awesome)的开发者Chris Wanstrath、PJ Hyett和Tom Preston-Werner使用Ruby on Rails编写而成。网站于2008年2月以beta版本开始上线,4月份正式上线。

Git虽然是Linux内核社区开发出来的,但前几年一直不温不火。真正在开源社区普及和爆发,是从Ruby社区和Github开始的。

Github诞生于Ruby的社区,因为三位创始人同时是ruby社区的活跃者,最开始Github只是作为一个周末项目简单做的。

Rails是一个高度集成的Web框架,通常情况下一到两个Rails程序员做一个Web项目就够了,一旦多人同时在一个Rails项目上工作,代码提交和协作会遇到很大的麻烦,更不要说开源项目大规模远程协作了。这算是Rails项目的一个痛点:单个工程师开发效率很高,但是团队协作很困难,CVS/SVN这种集中提交式的版本控制系统都不能很好的支持Rails团队的工作模式。

Github本身也是这种需求下的产物,一些湾区的Ruby社区的程序员使用Git以后,找不到好的Git托管网站,于是就开发了Github出来。然后Rails框架率先迁移到Github上,形成了示范效应,整个Ruby社区呼呼啦啦都迁上去了。Ruby社区另有一好处:各种开源库和包都统一用Gem格式发布,而一旦大量Gem都迁移到Github上了,Ruby程序员就跟着都开始用Github了。

Ruby社区是一个相当团结的社区,很少分裂,经常是一旦采用一个技术,整个社区就会迅速跟进和普及。虽然在国内Ruby是个小众的编程语言,但是在硅谷,Ruby很火,被誉为云计算时代的Web编程语言。Ruby整个社区都迁移到Github,开始对其他编程语言社区形成示范效应,其他编程语言社区接着跟进。

关于Github的两次融资

Github自成立之后,在社区的加持下,发展非常迅猛。通过提供免费的代码托管功能,全世界的程序员有了协作的社区,大家积极踊跃的将大量的代码上传到Github之上。虽然Github也提供需要付费的功能,但是你在使用中完全不会意识到这一点,Github处在开源的世界中,没有多少人会去设想Github会参与融资,很少人会去考虑公司的运营成本。

于是,在A轮融资时,非常多人担心Github会加快商业化进程,变得不是那么纯粹。但是没有,Github再有投资之后加速了其扩张和普及,让更多人能够知道并使用,让Github无处不在的愿望能够更快的实现。

Github从没有排斥资本介入,早期之所以没有接受资本投资,本质上公司并不缺钱。现在看来也正是因为这个原因,Github能够形成独特的公司文化和价值观,没有过早被资本所裹挟,没有扭曲公司发展轨迹和价值取向。

2018年被微软收购,一石激起千层浪,很多的开发者逃离Github,奔向如Gitlab等代码托管平台。现在看来在Github独立发展的方向上,微软并没有过多的干预,尽管最基础的服务已然全方位融合于微软,但是对于你我而言,用户体验方面是保持一致的,当初逃离的人也都回来了吧。

Github发展历程

2005

Linus花10天创造出了Git,Git只是命令行的程序,程序员之间没法分享优秀的代码,给了Github等可视化的版本控制系统机会。

2008

4月3日,上线第一个平台项目Ruby on Rails

4月10日,Github的正式版上线。

7月,发布了gists功能,用于托管代码片段。

12月,发布了pages功能,开发者基于该功能可以创建网站。

2009

5月21日,Nodejs登录Github。

10月,issue上线。

2011

1月1日 Travis CI的第一个拉入请求。

11月,启动enterprise项目,通过SaaS付费为C端的产品输血。

11月,Github拥有了100万用户。

2012

1月,JavaScript成为GitHub上最受欢迎的语言,JavaScript 在 2012 年成为了全平台最受欢迎的语言——远超 Ruby、Java 和 Python。今天,它仍然是 GitHub 欢迎榜榜首。

7月,GitHub在由Andreessen Horowitz领导的A轮融资中筹集了1亿美元。

2013

1月,GitHub 社区迎来第三百万个用户。

3月,GitHub达到了300万用户

5月,白宫在GitHub 上发布了美国官方的“公开数据政策”(Open Data Policy)草案。这具有非常重要的象征意义,在私人公司的服务器上对外托管政府政策文件是闻所未闻

2013年12月,GitHub上托管了1000万个存储库

2014

3月,开始做开放平台

5月,Atom编辑器免费开源,VSCode就是基于Atom。

10月,微软开源系统.Net

2015

2015年4月,2.5亿美元,B轮,红杉资本领投。

2015年6月,GitHub走出美国,在日本设立了一个办事处。

2015年7月,900多万用户,托管2100多万个存储库,成为世界上最大的代码存储库。

2015年9月,GitHub教室开学,使教师更容易分发初学者代码并在GitHub上收集作业。GitHub课程的创立使得老师能更简单地进行教学和布置作业。

2015年12月,苹果开源Swift,Swift的开源提供了新的开发工具,并同时鼓励更多的公司向公众发布他们的开发工具。

2016

2016年6月,GitHub在平台上引入了可搜索的公共数据数据库。

2016年7月,Apollo 11代码开源。

Apollo 11 在 1969 年登陆月球,47 年之后,其源代码在 GitHub 上公开。NASA 维护着上百个开源项目。在公共库中,你可以找到虚拟化Martian terrain和识别外星物体的TensorFlow的代码。同时,你还能找到SpaceX的开源编译代码。

2017

2017年2月,Python 团队开源他们的第一个拉入请求。2016年伊始 Python 维护团队就声明了他们进入 GitHub 社区的计划,并在2017年公开了他们的第一个拉入请求。在过去的十年中,Python 逐渐发展为发展最快的编程语言之一。从 2015 年起,它就是 GitHub 上最热门语言的第三名,并实现了年 70% 的增长率。在2021年6月语言排名大有超越C语言的趋势。

2017年6月,在GitHub上完成了1亿个PR合并请求。

2017年12月,用户在GitHub上,添加了2,800,000,000行代码。

2018

2018年4月10日,十周年,社区已经发展到2700万个开发者,在全世界范围内工作8000万多个项目。

2018年6月,微软宣布收购GitHub,耗资75亿美元,这是2018年的大事了。

2018年7月,GitHub上已经有了3000万开发者。 2018年10月,微软完成GitHub。

2019

Github用户可以免费无偿使用Github的私有库。

2020

总结

Github作为一个基于Git的代码托管网站,成立于人们急需互联的时代,其发展离不开开源社区的需求和活力。Github解决了困扰了数百万人的软件编程协作的问题,其不仅让编程变的更加简单,还设计出了市场急需且优雅的解决方案并实现了惊艳的增长。通过围绕开源项目Git构建SAAS服务,在为开源社区提供价值的同时获利。