(来自:
http://tech.ccidnet.com/art/1060/20041203/185163_1.html)
创始者
CVS的开发队伍共有18个人,其管理者都是对CVS的发展有过突出贡献的。CVS由开发者们共同决定如何发展,要做什么关键的改进。但是这个过程并不完全民主。仅在吸收新的开发成员时,须有多数人同意才行。其它方面大多不必如此,更不用投票。
CVS主要开发者Jim Kingdon认为,在自由软件项目中过分民主会陷入无休止投票的泥潭,导致效率低下。而指定单一人员来维护,对于自由软件的开发来说是最通行、最成功的做法,当然也是倍受争议的。对于软件的每一处修改,需要这个维护人员的同意,也只能通过这个单一的维护人员授权给其它下层维护人员。诚然,开源软件的成功要依靠众人的参与,但是,愿意为软件效力的每个人并不都具备编码的水准,都了解局部改变和整体的关系,因此不能谁说了都算,而是要把目光集中在真正有可能给软件带来贡献的那些人身上。
CVS走过了一段坎坷的路程。Jim Kongdon既是一个了不起的程序员,又具有商人的特质。Jim Kingdon毕业于美国俄亥俄州的Oberlin学院,之后曾为自由软件基金会(FSF)工作过。1993年之后,除了开发CVS之外,他还是Cygnus的工程师,为GDB修补Bug。他自己开过一个Cyclic公司。Cyclic是靠提供CVS支持服务来赚钱的公司。Jim Kingdon 1995年白手起家,到了1998年经营收入已达到了13.5万美元。离开Cyclic之后,Jim Kingdon在Red Hat工作了一年,后来频繁“跳槽”。2002年之后,他在加利福尼亚Fremont的Enlighta公司当程序员,为Web/SQL做测试。他的自我发展目标是甘愿当一个程序员,与同事、客户、合作伙伴一道创造和维护高质量的软件。他本人兴趣甚广, 除了编程,他还热衷太空市场,学习西班牙语、日语和世界语等。
长期以来,Cyclic维护着CVS的“官方”网站
http://www.cvshome.org/。但是,除少数人员的重合外,Cyclic和CVS的开发队伍基本上是独立的。1999年,Jim Kingdon突然宣布他要离开Cyclic去Red Hat工作,他将Cyclic卖给了Source Gear公司,同时Cyclic也发布了一个声明,说它不再正式支持CVS。这带来一场不小的震动。
Source Gear也是一家销售和维护软件的公司,它希望能够作为CVS的供应商,使CVS变得有利可图,最终成为CVS发展的领头羊。尽管实际情况不尽人愿,一些CVS的开发者并不买他们的账,但Source Gear还是为CVS做了一些实质性的工作。而CVS的开发者迅速成立了一个新的项目CVS Continuity Project,其目的是使CVS开发、维护工作能够继续正常进展下去。现在CVS的网站挂在Yankee Group麾下CollabNet公司的SourceCase网站上,SourceCase是专门为全球志愿的开发人员协同开发软件提供的Web空间。
除了Jim Kingdon以外,CVS开发队伍中的一些关键人物是:
◆Steve Willer为CVS社团做了大量的服务工作,在邮件组中回答各种问题,并向开发团队报告具有共性的Bug。
◆Pascal Molli负责网站
http://www.loria.fr/~molli/cvs-index.html的维护。这个网站上面放着最新版本的CVS和各种CVS文档,以及与相关资源的链接等。
◆David Klann维护着info-cvs MINI-FAQ(常见问题解答),并定期更新。这个FAQ链接着各个相关的地址,提供各种公众需要的信息。
◆David W. Eaton维护着comp.software.config-mgmt FAQ。这是一项艰巨的工作,因为他试图把整个配置管理领域都囊括进去,而不仅仅是CVS。
版本与相关项目
目前,最新的CVS版本是2004年3月13日发布的1.12.6,稳定版本是2004年3月11日发布的1.11.14。CVS支持的平台包括Windows 32、Linux和Unix等。
CVS有多个发展方向,相关的开发项目主要有:
◆Anonymous CVS Access Via ssh 加强CVS的安全。
◆Bonsai 为CVS增加基于web的图形界面。
◆CHalogen The Change Log Generator,产生HTML形式的变化日志。
◆Component Software CVS for Windows Windows平台下的CVS前端。
◆CVS Access Control List Extension 为CVS远程代码库增加ACL访问控制。
◆CVS Code Historian 在MS VisualStudio或浏览器中,利用CVS记载的信息进行文件比较或分析。
◆CVS for MVS 把CVS移植到MVS/OS390/USS主机。
◆CVS Monitor CVS代码库浏览器。
◆CVS version control for web development 为Web开发者写的CVS工具。
◆CVS via FTP 通过FTP实现CVS网站镜像。
◆cvs2cl CVS日志转换。
◆cvsdude 在Windows和类Unix客户端平台上用命令行访问CVS。
◆CVSGrab 通过防火墙获得CVS树。
◆cvs2html 将CVS日志转成HTML格式。
◆cvsknit A CVS automation suite,粘合多个CVS代码库的自动工具。
◆cvslock 维护和检视多个代码库,保持同步。
◆CVSNT 在Windows NT/2000下运行的CVS服务器。
◆Cvsplot 为CVS控制的文件提供统计信息。
◆CVSSearch 通过CVS命令来检索代码片断的工具。
◆CVSspam Notification of CVS committs, by email。当CVS有变化提交时发出E-mail。
◆CVSSupport 用Perl写的CVS工具。
◆CVSToys CVS变化提交时的通知工具。
◆CVSTrac 基于Web的Bug和补丁跟踪系统。
◆CVSup 通过网络发布和更新批量文件的软件包。
◆CVSweb for Windows 95/NT/2000 为在Windows PWS/IIS上运行CVS Web提供的指令。
◆CVSweb (Henner Zeller version) 用Perl脚本通过RCS命令为CVS加上Web接口。
◆StatCvs 产生HTML和PNG格式的CVS代码库的统计信息。
◆ViewCVS 用Python写的类似CVS Web工具。
◆ViewCVS for Windows ViewCVS到Windows平台的移植,运行于IIS。
要想了解关于CVS更多的信息,可以参看下面的网址
http://www.cvshome.org;
http://www.loria.fr/~molli/cvs-index.html;
http://www.soforge.com/cvsdoc/zh_CN/book1.html;
http://cvsbook.red-bean.com/;
http://cvsgui.sourceforge.net/。
CVS是一个广泛使用的版本控制系统,随着互联网的普及,分布在世界各地的程序员会越来越多地采用它进行版本控制和开发。(T111)