对于开发人员来讲,不使用版本控制的开发过程是不可想像的,哪怕是一个人写程序。没有版本控制会让你修改代码的时候缩手缩脚,让你出现错误的时候发出一声长叹。版本控制系统给大多数人的印象可能是太复杂,太大了,小程序就没有必要使用了。实际上,版本控制系统都是很精简的,安装程序只有几M,装在机器上也占不了多少系统资源(相对于IDE来说),而它为你提供的是一个所有的修改历史,在出现错误的时候可以随时回到以前的任何一个版本,可以让你配合自动构建工具完成自动编译和发布。
目前流行的版本控制工具选择并不多,使用微软的开发工具的人可能会使用Visual source safe,我没有具体用过,但是研究过它的说明,首先它的限制很多,而且,功能并不是很完整,所以这里不做说明,也不做推荐。
CVS作为开源界的一大功臣,可以说没有它就没有开源软件的兴旺。因为它给全球合作开发提供了基础。
安装过程还算比较简单,在Linux下基本上所有的Linux发行版都带了CVS的安装包,直接安装以后就可以使用了,Linux下也有CVS的客户端可以用,稍加设置就可以用了。Windows下更简单,CVS在Windows下的版本叫做CVSNT,直接安装就可以了,安装后会出现在控制面板里。可以修改服务的属性,存放位置等等。客户端工具可以选择的也有很多,wincvs,tortoisecvs,都是非常成熟好用的工具。
使用过程很简单,建立项目以后导入这个目录,然后就在进行任何修改之后Commit一次。如果是多人合作,经常Update,取得别人最新上传的文件,使整个项目处于同步状态。这个其实没什么好说的。
由于CVS与生俱来的一些的问题,它的开发者重新开发了另一套工具来替代它,Subversion。Subversion针对CVS的一些弱点进行了改进,目前已经成为应用最广泛的版本管理工具,连世界最大的开源软件平台SourceForge.net都已经将原来的CVS平台替换成了Subversion。所以,如果你是现在开始学习使用版本控制的话,直接从Subversion开始吧。
它的安装过程更简单,在Windows下有exe安装程序,但是安装以后需要以命令行的方式启动,另外网上有一个工具SubversionService,可以将Subversion安装成系统服务,客户端建议使用TortoiseSVN。完全与资源管理器整合,直接用右键完成所有功能。使用方法基本上跟CVS一样。
Subversion的一个重大改进是可以作为Apache的模块来运行,使用80端口来提供版本控制,这对于很多使用严格的防火墙策略的企业是非常有用的。具体安装方法网上已经有很多,很容易找到。
一个好的工作习惯是,把所有的跟项目相关的文件都放在一个目录下,包括项目计划书,需求说明书,等等。尽量使用文本格式(建议使用XML+XSLT的方式,即可以保证阅读的方便,又可以使用版本控制工具的各种强大的管理功能)。
浙公网安备 33010602011771号