git的历史也是挺奇幻的,最初linux社区因为拒绝使用收费的版本控制系统,又对于当时主流的免费版本控制系统不屑一顾,一直到2002年,linux都是由社区的人通过diff的方式把源代码发给linux之父,开源linux的林纳斯,然后他再去合并这些代码。
很显然,这是一个非常低效的做法,之后林纳斯没办法就去找了bitver,bitver也不知道到底是出于什么考虑,把旗下的收费版本控制系统免费给了林纳斯用。
本来事情也就这样了,可偏偏05年的时候两边闹翻了,起因是linux社区的人在破解bitkeeper。
按说这事错在linux社区,林纳斯应该去道歉才对,结果林纳斯不仅没道歉,还自己搞了个git出来,这里面到底都有哪些细节,外人就不得而知了。
而且关于林纳斯多久开发出的git,有人说十天,有人说两周,但从逻辑来说,林纳斯真能这么短时间内开发出git的他早开发了,应该是经历了一段时间沉淀之后才能在这么短时间内开发出来的,甚至有人说林纳斯故意跟bitver闹翻的。
这个事背后的故事感觉应该还挺精彩的,只可惜当事人不太可能把真相告诉世人。
但不管背后到底有什么样的故事,git的优异性,得到了整个业界的认可。
“大家知不知道版本控制系统?”孟谦问了一声,现场大概三分之二的人举起了手。
“那我给你们举个例子吧,今天我让运营部的阮经理写一份策划书,他写好之后觉得不好,就修改了一下并且另存为了一份新的策划书,之后有纠结症的他又写了三份策划书,都重新另存为,于是乎,他就有了五份策划书。
这个时候,当他给我看了五份策划书之后,无论我最终敲定哪一个版本,他都可以把那一版拿出来,而不是在第五版的基础上再改回去,这就是版本控制系统。
而分布式版本控制系统相比于传统的版本控制系统,区别就在于,现在市面上的版本控制系统都把数据保存在服务器上,大家想要去提取数据必须通过服务器。
但我想做的分布式版本控制系统,数据可以保存在本地计算机上。”
下面开始躁动起来,懂版本控制系统的员工忍不住窃窃私语,因为孟谦的想法显然可以解决版本控制系统很现实的问题。
之后,孟谦又着重跟大家谈了一下关于git的几个创新点,尤其是在内容存储上,把后世git的几大优势都搬了过来。
这也是孟谦带团队开发的习惯,先让大家清楚我们要做出来的是一个什么样的东西,让大家对这个东西有期待,觉得做出来之后会有成就感,大家就会更有动力。
之后就是设计的讲解,关于工业软件开发部的工作安排算是完成了。
至于他们会不会出去传自己就是开源联盟的创始人,肯定会,但现在孟谦已经不需要隐瞒这个身份了,当初做开源联盟的目的就是为了名,现在,孟谦需要名了,因为接下来要做的东西,系统。
后世流行一句话,叫做做系统很简单,难的是生态。
对于这句话,孟谦一直都是有点不理解的……
一个win7几千万行代码,上千人的开发团队,数十亿的开发投入,一个安卓,上亿行代码,6年的开发时间,一个苹果系统,经历了四次革命,前后投入过百亿,鸿蒙系统12年开始开发,19年被迫备胎转正却一拖再拖。
做系统……很简单?
确实做一个系统出来,如果没有生态,那都是白搭,生态是摆在系统竞争面前最难的事情,但做系统本身……很简单嘛?
本来孟谦以为大家是把做系统跟做生态做对比所以这样说,但后世他在网上看到还真的有不少人说出类似几十个人就能搞出安卓就能搞出windows之类的话,关键至少从网上的反应来看,有不少人认同,就说难的是生态,做系统特别简单。
说实话孟谦是真的不知道更多的人是不是真的觉得做系统特别简单,简单到几十个人,甚至几个人就能搞出来一个windows……
也许是孟谦对这句话产生了误解吧,反正在孟谦看来,如果这里说的系统是对标windows,对标苹果的话,只能说像bat和华为这样的企业完全有能力做出一个类似体量的系统。
毕竟系统的设计方向很清楚了,只要钱到位,人到位,他们这种大企业想做绝对是可以做的,甚至在某些方面做的比windows更好,比苹果更好也是很正常的事情。
在这个前提之下,难的才是生态。
但如果没有足够的企业实力,连做系统这一关都过不去。
至于做生态为什么难,第一是因为用户习惯,我用windows十几年都习惯了,突然让我换个系统用,总得有个理由,要么因为硬件的转换连带转换系统,这在手机领域比较常见,要么就是系统有特别吸引人的地方,如果硬件又不换