网易首页 > 网易号 > 正文 申请入驻

他只想在乡村安静地写代码,却一不小心改变了全球程序员的命运!

0
分享至

0 1

天才程序员

1993年,开发著名软件Cygwin的公司Cygnus Solutions招募了一名天才程序员吉姆·金登 (Jim Kingdon)。

但是吉姆并不想搬到Cygnus所在硅谷,他想住在弗吉尼亚州一个乡村的公社(commune )里。

Cygnus公司很重视人才,他们专门为吉姆·金登一个人拉了一条帧中继线(这在当时价格可不低),让他可以远程工作。

问题是Cygnus使用CVS来管理源代码,CVS是荷兰阿姆斯特丹自由大学讲师Dick Grune在80年代开发的一个程序,当时只能在单机使用。

(Dick Grune)

用户需要从代码仓库中checkout代码副本,存放在自己的home目录,修改后commit回代码仓库。

所以住在乡村的吉姆·金登虽然有了网络,但是还无法远程登录CVS,在家工作。

这根本难不住吉姆这样的天才黑客:让CVS支持网络不就行了吗?

说干就干,他拿到CVS的源码,研究了一番,把CVS拆分成了客户端和服务器两个部分。

1993年的网络非常缓慢,吉姆·金登一不做二不休,干脆设计了一个全新的、高效的通信协议,极大地减少了网络往返次数,降低了延迟。

服务器暴露在互联网上,必然要考虑安全问题,Jim Kindon于是又增加了Kerberos 认证。

一套组合拳让CVS脱胎换骨,成了当时非常先进的软件,大大超越了同时代的许多工具。

Cygnus 是一家扎根于黑客文化的公司,也很乐意看到吉姆·金登对CVS做出这样的修改。

现在,吉姆·金登可以愉快地远程工作了,从湾区的 CVS 存储库中取出代码,将其checkout弗吉尼亚自己的计算机上,随心所欲地进行开发,并在完成后将其commit回去。

0 2

1990s:CVS黄金时代

照理说,开发了这么一个革命性的软件,又遇上了开源的浪潮,全球的开发者都是潜在的用户,吉姆·金登完全可以成立一个公司,提供技术支持和咨询服务,弄不好就走上人生巅峰了。

但吉姆·金登魔改CVS,只是为了方便自己工作,只想在公司内部使用,根本没有想到对外公开!

不仅如此,在解决了自己的问题以后,他就把注意力转到了别的方面,从黑客界消失了。

这时候第二个吉姆出现了,吉姆·布兰迪(Jim Blandy)是吉姆·金登的大学室友,他和朋友进行远程协作时也遇到了类似的问题,只能通过电子邮件来发代码补丁,极其麻烦。

这时候他听说了被魔改的网络版CVS,大喜过望,马上给吉姆·金登写信,希望能使用魔改版。

吉姆·金登当然同意分享代码,但有一个条件:不能问他问题!

因为他对维护开源软件的各种琐事没有兴趣,也不想处理用户的支持请求。

吉姆·布兰迪就想,这么有用的软件,没人做技术支持,多可惜啊!

看到商机的吉姆和朋友干脆成立了一家叫做Cyclic Software的公司,专门提供网络版CVS(被大家称为Cyclic CVS)的技术支持和咨询服务。

开源、免费、跨平台的Cyclic CVS彻底改变了开源协作方式,GNU项目、FreeBSD、Apache HTTP Server、KDE、GNOME、Mozilla、Perl、Python等著名开源项目纷纷采用CVS保存自己的代码库。

当时最大的开源平台SourceForge也在用CVS,CVS成了开源世界的标准。

0 3

2000s:SVN成功接棒

虽然Cyclic CVS风靡全球,解决了开源世界的协作的难题,但是它最初的设计缺陷也让用户抱怨连连:

1.缺乏原子提交

在 CVS 中,每个文件的更改是独立提交的,多个文件的变更没有任何关联。

A 和 B 文件属于同一次修改,但由于并非原子提交,可能 A 提交成功,而 B 失败,导致代码库处于不完整状态。

2.update 操作时非常低效

CVS 并不存储整个项目的完整快照,而是对每个文件单独管理版本,如果代码库有 10,000 个文件,但只有 3 个文件被修改,CVS 仍然需要通过网络检查全部 10,000 个文件,造成巨大的性能浪费。

3.创建分支非常困难。

CVS 创建分支时,实际上是为每个文件的历史记录打上一个分支标记,当代码库包含数十万文件,非常耗时。

在整个90年代,CVS没有好的免费开源替代品,大家还是不得不使用。

每天都在使用CVS的吉姆·布兰迪一直在构思,怎么重新设计一下CVS,彻底解决这些问题。

新系统的名称他都想好了,叫Subversion。

正好,一个叫做CollabNet的公司也受不了CVS了,掏钱资助吉姆·布兰迪等5个人把Subversion给开发出来。

当时吉姆已经在红帽公司工作,红帽也非常慷慨:你去吧,什么时候把Subversion开发出来再回来!

开发工作于2000年2月启动,5人目标明确,配合默契,按模块分工,每个人专注于自己的部分,吉姆主要负责 服务器端,而其他人分别负责命令行工具、工作目录库等部分。

一开始他们还使用CVS来管理Subversion的源码,一年以后,Subversion的主要功能已经完成,可以开始“吃自己的狗粮”,用Subversion来管理Subversion。

Subversion彻底解决了CVS的问题,实现了原子提交,迅速地创建分支等功能。

大家看到更好用的Subversion,纷纷抛弃CVS,上了Subversion的大船。

SubVersion成为了21世纪头10年最主流的版本控制系统。

0 4

2010s:Git称王

就在Subversion如日中天的时候,2005年,Linux社区发生了一件大事!

由于有人对BitKeeper做逆向工程,BitKeeper停止向Linux社区提供免费版本。

Linus只好暂停了Linux的开发,卷起袖子自己开发了一个版本管理软件:Git。

和Subversion相比,BitKeeper和Git代表了另外一个重要的方向:分布式版本管理。

每个人都有一个本地的代码仓库,可以在本地随意折腾,即使没有网络也具备完整的版本管理的能力。本地开发结束后后向服务器端的代码仓库提交就行。

这种方式更加符合开源软件的全球化协作,所以Git开始走出Linux开发社区,慢慢地蚕食Subversion的市场。

2008年,GitHub成立,不但给Git 用户提供了便捷的代码托管服务和丰富的协作功能(Pull Request,Issues),还让程序员可以关注自己感兴趣的用户和项目,成为程序员社交的重要平台。

短短的两三年时间内,GitHub吸引了Ruby on Rails,jQuery,Node.js,Bootstrap、Redis、Python、Puppet、Chef、Elasticsearch等一大批著名项目入驻。

到了2015年,Git 成为程序员最常用的版本控制工具,占据绝对主导地位。

SVN 的市场份额逐渐缩小,成为少数遗留项目/特殊项目的选择。

就连Subversion的作者吉姆也开始奉劝别人:别用使用SVN了,它已经过时了......

从CVS到SVN再到Git,20年间代码版本管理工具迭代了三次。

如今Git是全球霸主,被大家使用得多了,它的痛点问题也在慢慢暴露。

颠覆它的工具可能正在酝酿之中,也许某一天,Linus也会说:别用Git了,它已经过时了......

全文完,觉得不错的话点个赞或者在看吧!

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
长沙占车位事件又发酵!体育局上班时间上午9点到12点,彭某7月1日9点还在家,引发质疑

长沙占车位事件又发酵!体育局上班时间上午9点到12点,彭某7月1日9点还在家,引发质疑

火山詩话
2026-07-14 16:52:06
葡萄牙新帅宣布:只要C罗没退役我就会征召他!有望参加9月欧国联

葡萄牙新帅宣布:只要C罗没退役我就会征召他!有望参加9月欧国联

念洲
2026-07-14 20:10:30
中共中央批准:济南市委书记履新!多个省级党委领导班子调整

中共中央批准:济南市委书记履新!多个省级党委领导班子调整

上观新闻
2026-07-14 16:14:32
杭州一甜品店店主被刺 不幸身亡

杭州一甜品店店主被刺 不幸身亡

闪电新闻
2026-07-14 11:40:31
U17世界杯:中国女篮狂输西班牙36分 三分18中2+狂送27失误

U17世界杯:中国女篮狂输西班牙36分 三分18中2+狂送27失误

醉卧浮生
2026-07-14 19:54:48
美智库爆出内幕:中国本来要试射两发潜射导弹,最后却只射了一发

美智库爆出内幕:中国本来要试射两发潜射导弹,最后却只射了一发

深析古今
2026-07-14 19:33:31
阿根廷获准佩戴黑纱出战世界杯,法国队要求被FIFA驳回

阿根廷获准佩戴黑纱出战世界杯,法国队要求被FIFA驳回

无意争春
2026-07-14 15:31:47
心照不宣地放任失业,是大国经济崩盘的根源?

心照不宣地放任失业,是大国经济崩盘的根源?

文化纵横
2026-07-14 16:45:46
河南商人在河北投资办学,2100万元建设的校舍竟成“违章建筑”

河南商人在河北投资办学,2100万元建设的校舍竟成“违章建筑”

大风新闻
2026-07-14 16:25:09
卢拉公开批评巴西国家队“丢人”:出征时浩浩荡荡,回国飞机上只有一名球员,建议主教练签个机器人,“这样巴西准能拿下世界杯冠军”

卢拉公开批评巴西国家队“丢人”:出征时浩浩荡荡,回国飞机上只有一名球员,建议主教练签个机器人,“这样巴西准能拿下世界杯冠军”

政知新媒体
2026-07-14 23:38:28
历史积怨太深!FBI将世界杯英阿大战,列为“最高风险”等级

历史积怨太深!FBI将世界杯英阿大战,列为“最高风险”等级

全景体育V
2026-07-14 17:09:18
大战前夜,阿根廷突收到 “天降神兵”!英格兰,这次真要悬了

大战前夜,阿根廷突收到 “天降神兵”!英格兰,这次真要悬了

体坛狗哥
2026-07-14 13:23:40
伊朗发动代号“纳斯尔2”军事行动,对美军“造成重大损失”!特朗普:伊朗想达成协议,已与美方接触!以色列非常想加入打伊朗,美国不让

伊朗发动代号“纳斯尔2”军事行动,对美军“造成重大损失”!特朗普:伊朗想达成协议,已与美方接触!以色列非常想加入打伊朗,美国不让

每日经济新闻
2026-07-14 13:47:03
中组部、人社部、公安部关于离退休干部出生日期认定的系统精神

中组部、人社部、公安部关于离退休干部出生日期认定的系统精神

华庭讲美食
2026-07-14 11:01:54
乌军公布视频:无人艇抢滩登陆成功,机器人自主下船登上俄控海岸

乌军公布视频:无人艇抢滩登陆成功,机器人自主下船登上俄控海岸

红星新闻
2026-07-14 18:58:17
后续来了!20伴娘遭婚闹被拖至床上,多名男子将其抛摔致九级伤残

后续来了!20伴娘遭婚闹被拖至床上,多名男子将其抛摔致九级伤残

派大星纪录片
2026-07-14 15:33:05
蒋方舟4家企业均已注销!硕士学位被撤前3天,其一家公司100%股权和法代均转移至母亲,该公司持有公众号“蒋方舟的跋涉”

蒋方舟4家企业均已注销!硕士学位被撤前3天,其一家公司100%股权和法代均转移至母亲,该公司持有公众号“蒋方舟的跋涉”

每日经济新闻
2026-07-14 17:14:06
金价,暴跌

金价,暴跌

鲁中晨报
2026-07-14 15:56:02
亲姐弟联手给父亲下安眠药,贷走4000万买金条,检方:这是抢劫!

亲姐弟联手给父亲下安眠药,贷走4000万买金条,检方:这是抢劫!

奋斗在韩国
2026-07-14 12:05:08
华为员工:我的人生很失败,赚了1000多万,买房赔了;孩子成绩全班倒数;媳妇每天不停的抱怨……

华为员工:我的人生很失败,赚了1000多万,买房赔了;孩子成绩全班倒数;媳妇每天不停的抱怨……

背包旅行
2026-07-14 18:03:28
2026-07-15 03:44:49
码农翻身 incentive-icons
码农翻身
有趣且硬核的技术文章
285文章数 663关注度
往期回顾 全部

科技要闻

AI失业风险正在逼近 "我们连未来都看不清"

头条要闻

168万拍"乾隆梅瓶"仅值250元 受害人:一共卖了我5个亿

头条要闻

168万拍"乾隆梅瓶"仅值250元 受害人:一共卖了我5个亿

体育要闻

“爱哭鬼”教练,凝聚了一盘散沙的阿根廷

娱乐要闻

施南生离世,成龙、甄子丹等发文悼念

财经要闻

为什么说智谱是中国版Anthropic是伪命题

汽车要闻

激光雷达+智舱 看吉利星瑞L PLUS如何让燃油车也更智能

态度原创

亲子
家居
旅游
手机
军事航空

亲子要闻

封闭自我不出房门,父母拿躺平孩子一点办法也没有了吗?

家居要闻

2026建博会(广州) 公装联探展交流活动

旅游要闻

相隔千里的故土与南洋,一栋弯楼,装下几代云南人背井离乡的思念

手机要闻

REDMI Note 17 Pro手机体验:延续小金刚基因,抗摔防水大电量

军事要闻

美军宣布将于14日恢复对伊朗的海上封锁

无障碍浏览 进入关怀版