几种版本控制系统比较

来源:互联网 发布:淘宝小号信誉查询网站 编辑:程序博客网 时间:2024/05/22 13:18

CVS(Concurrent Versions System)版本控制系统是一种GNU软件包,主要用于在多人开发环境下的源码的维护。Concurrent有并发的、协作的、一致的等含义。实际上CVS可以维护任意文档的开发和使用,例如共享文件的编辑修改,而不仅仅局限于程序设计。CVS维护的文件类型可以是文本类型也可以是二进制类型。CVS用Copy-Modify-Merge(拷贝、修改、合并)变化表支持对文件的同时访问和修改。它明确地将源文件的存储和用户的工作空间独立开来,并使其并行操作。CVS基于客户端/服务器的行为使其可容纳多个用户,构成网络也很方便。开源,免费。

SVN(Subversion)的出发点是保留CVS的基本特性但去除CVS的bug和不好的特性,其最初的设计Team定下了几个简单的目标。它必须在功能上可取代CVS,也就是说, 所有CVS可做到的事, 它都要能够作到。在修正最明显的瑕疵的同时,还要保留相同的开发模式。还有,Subversion应该要和CVS很相像,任何CVS使用者只要花费少许的力气,就可以很快地上手。开源,免费。

ClearCase具体的说是做配置管理的工具,只是SCM管理工具其中的一种。是RATIONAL公司开发的配置管理工具,类似于CVS,SVN的作用,但是功能比CVS,SVN强大的多,而且可以与WINDOWS资源管理器集成使用,并且还可以与很多开发工具集成在一起使用。但是对配置管理员的要求比较高。功能很强大,价格必须很昂贵。

CVS和SVN在功能和作用上是差不多的,都提供了基本的版本管理功能,但是没有提供bug管理功能。在实际应用中可以和别的开源bug管理工具组合在一起使用,比如Bugzilla。ClearCase和它们的最大区别就是提供了基于活动的变更和缺陷跟踪,支持最常见的变更请求,便于对系统做进一步的定制,还有强大的报告和图表功能,不用借助其他的工具。

除此之外,ClearCase在版本的管理功能上比CVS和SVN也要强大些。比如一个功能你只提交了一部分代码给版本控制系统,CVS和SVN在发布系统的时候可能会报错。但是ClearCase因为代码的检出(check out)和检入(check in)都是用CD号控制的,所以在发布的时候可以根据CD选择哪些发布哪些不发布,自然不会报错了。

SVN下载地址:http://www.subversion.org.cn/?action-channel-name-product#download

Bugzilla下载地址:http://www.bugzilla.org/download/

 

原创粉丝点击