我们为什么需要版本控制系统?
甚至早在踏上程序员的工作岗位的第一天之前,我就开始使用版本控制系统了,那时候,使用的是SVN。而现在工作五年多了,我使用的版本控制系统,换成了Git。现在,我试图通过一个分享,将我的同事,或者一般的小伙伴,带入到Git的世界,这时候,我就必须搞清楚很多基本的问题,比如,这个问题,为什么我们需要使用版本控制系统呢?
上周五,我们公司新加入的工程师,给大伙分享了Git的一点经验心得,谈及这一类的问题的时候,表达了类似非常理所当然的态度,甚至我都不记得他有提及过任何相关的词句。但是,假如我现在必须给一个从来没有用过版本控制,甚至不知道版本控制的人,讲解版本控制系统的必要性的时候,这个问题真的有那么理所当然么?
我想,答案是否定的。(谈及这个东西的时候,我忍不住又想啰嗦了,我在跟人沟通的时候,常常发现,很多人无法分清楚,什么是主观的,什么是客观的,更别提要求他们分清楚,什么是自己已经知道的事实,而这里面哪些东西,站在你对面的人其实并不清楚,也即信息的不对称程度到底达到什么级别?所有这些归结为三个字,就是“想当然”。所以,当你想当然地觉得,这还用说嘛,或者觉得,显然这是个正确的理由的时候,其实,对别人来说,确实没有那么的理所当然)