我叫GIT,IT行业的人基本都知道我是谁。如果你说你是一个程序员,然后你不认识我,那么我只能呵呵了。除了鄙视你外我还能想出其他的词吗?答案只有不能0.0,说起我的故事,有着一段很牛X的经历。
我的大哥叫VCS,也被人类称为版本控制系统。他诞生于1986年,我还隐约听我母亲说当时的他还是一个shell脚本,1989年3月,人类用C语言重新设计并编写了我的大哥VCS;1993年,他渐渐正式被应用在了IT行业,自从VCS步入人类的世界中,大哥的影响对IT行业来说出现了翻天覆地的变化。刚开始大哥只是将一个人类的文件回溯到它原来的状态,或者让人类通过比较他们上传文件差异中查出是谁修改的,然后大哥进行恢复文件,让程序员们的工作量大大的减少了很多。也正因此,我大哥在家族的地位就像皇帝一般不可动摇,他发脾气没人敢得罪,那段时间我一度觉得我大哥才是真正的牛人,也将这样一直被宠下去。
直到有一天.......大哥开始渐渐消沉了下来,他发现自己开始被人类所埋怨,所吐槽了,他渐渐的感觉力不从心了,这时的我明白大哥已经老了。噩梦永远都是那么的痛苦,终于有一天,二哥和大哥因为IT界的争宠喋喋不休的吵了起来。二哥叫CVCS,也就在没过多久之后人类看出了我二哥的潜力,二哥CVCS也顺其自然的卷入了IT界的发展,二哥的表现并没有让他们失望,他众望所归。他也被大家称为集中化版本控制系统,通过一个单一的服务器,他可以保存所有文件的修订版本。协同程序员们对通过客户端连到这台服务器,取出最新的文件或者提交更新。这些年以来,二哥CVCS已成为版本控制系统的标准做法,他就像一颗耀眼的明珠出现在了IT界,顿时人类疯狂的追逐和改进。那段时间,大大小小的公司随处可见二哥CVCS的身影,我也为他感到高兴,希望他一直这么的好下去。
可是好景不长,渐渐人类也发现了二哥的缺点,因为CVCS是依靠服务器的单点今昔。如果程序员们在这一小时内同时提交工作报告,那么有可能二哥管理不过来,导致谁都无法提交更新也就无法协同工作。要是服务器的磁盘发生故障,碰巧没做备份或者备份不够及时,就会出现丢失数据的风险。也就是说,只要整个项目的历史记录被保存在单一位置,就有丢失所有历史更新记录的风险。人类是不希望出现这种情况的,这时他们将眼光聚集到了我 GIT身上。
我——GIT 家族中最小的成员,也被称为分布式版本控制系统。从小看着大哥VCS和二哥CVCS在IT圈中混的风生水起,自己不免有时候会既羡慕又难过。羡慕的是为什么哥哥们都可以那么优秀,那么成功,难过的是为什么自己对IT圈来说没发挥作用呢?一个偶然的机会,人类发现我的身上有着他们一直追求的东西。我可以把原始的代码仓库完整地镜像下来,当服务器发生故障,我可以通过任何一个镜像出来的本地仓库恢复。因为我的每一次提取操作,实际上都将是一次对代码仓库的完整备份。成功的解决了人类程序员困惑许久的问题,我听到了他们欢呼的声音,他们将我如获至宝,我也就这样正式踏足IT界。
从我被应用到现在,IT界一直被推动着向前发展,对于在这个为肉松饼编写小说都能流行的时代来说,今天我的自诉只想告诉那些人类,我们整个家族为了你们付出了很多,请你们不要抛弃我们,我们希望可以更好的继续为你们服务,让我们共同努力,COME ON !
来源:oschina
链接:https://my.oschina.net/u/2362066/blog/414072