// to do:加入处理 cvs update和处理merge的部分。
更多的资料请参阅Karl Fogel的《Open Source Development With CVS》一书。该书的中文译本《CVS开源软件开发技术》由机械工业出版社出版(ISBN 7-111-088Array1-3/TP.1885,人民币35.00)。按此连接到华储网上电脑书店订购http://www.huachu.com.cn/asp/book/brow.asp?lbbh=BArrayArray1120Array1
用MFC编写的windows平台CVS图形界面 --- WinCVS(未完成)
好了,像黑白电影总是会过渡到彩色电影一样(正巧,像现在发生在移动电话市场的情况一样),cvs命令行之外,一些图形界面的程序被编写出来简化你的操作。由于CVS的协议是公开的,所以,只要你的编程语言支持socket通讯,你也可以写一个。这个世界上有好几个这样的尝试,WinCVS是其中一个。它是在win32平台上用MFC开发的。从我自己的体会来看,这是一个有益的尝试,但是还远远称不上精美。和VSS和source off site,borland的tram source,以及PVCS的界面比较,这个windows界面还显得很粗糙,差强人意。
但是我们还是可以从它开始进行我们的工作。
下载请至http://www.redsaga.com/CVS_newbie_win32/www.cvsgui.org,那里有新的版本。
打开开始菜单的之后,你看到的是这样一个界面:
界面由3个主要区域组成,坐上角是目录结构,右上角是文件夹详细内容,下方是CVS命令的log。你可以从下方的log中得知cvs运行的详细信息。
首先你要做的事情是告诉winCVS你的CVSROOT。
这个对话框在winCVS1。2和1。3的各个版本中稍有不同,但是不妨碍你输入CVS服务器的详细信息。
下一步是login。
好了,现在我们可以去得到一份jive2的源代码了。
你可以看到,winCVS默认会加上压缩的参数,这样可以减少网络流量,加快速度。
同样,用winCVS进行文件修改也是挺方便的。
以上是winCVS的简要操作指南。更进一步的复杂操作,请参阅其帮助。
评价:值得关注,但不推荐。
在windows Explorer里直接checkout ---- TortoiseCVS
TortoiseCVS已经是一个相当成熟的cvs界面了,它的工作方式也是非常有趣的。
TortoiseCVS是一个简洁有效的CVS界面。你完全可以用它替代winCVS做日常绝大多数的工作。他独特的运行方式非常迷人,在一些商用配置管理工具,比如Rational ClearCase中,你也可以看到这样的windows explorer扩展程序的工作方式。
缺点:
1,tortoiseCVS会一直不释放它所操作的一些CVS文件和文件夹的系统资源。你可能会在试图删除一个在CVS控制之下的目录时遇到麻烦。windows系统认为有另一个进程正在打开它(显然是TortoiseCVS),我没有找到如何杀掉在后台执行的TortoiseCVS的方法。在这种情况,用TortoiseCVS去update一下另一个module有所帮助。或者请重起你的explorer。
2,如果你需要在两个不同的server或者repository上做checkout的工作,TortoiseCVS有一个bug。它会在你输入CVSROOT信息,checkout第二个module的时候仍然使用第一个repository的CVSROOT。但是再做一次同样的操作会成功的达到你的目的。
评价:推荐。
按此进入关于使用TortoiseCVS的详细说明
基于Netbeans Java类库的漂亮GUI ---- SmartCVS
使用java编写的CVS GUI在过去一两年中得到了长足的发展。拜jdk1.3所托,现在java程序的执行速度也有很大提高。Netbeans是由sun赞助的一个开放IDE,它其中包含了了CVS的基础类库。一个商业性的GUI,SmartCVS,是在netbeans的稳定的cvs核心之上编写的。 虽然SmartCVS的商业版本收费,但是其基础版本是完全免费的,而这个基础版本已经足够大多数应用所需。
SmartCVS你可以在www.regnis.de下载。
SmartCVS自从1.2beta版本开始引入smartCommit,不再区分add和checkin,统一使用commit进行操作。
利用SmartCVS,你也可以看到一个文件的历史,以及图形化表示的各个分支。
总结:SmartCVS正如他的名字所说的,是一个相当聪明,精致,漂亮的CVS 客户端。作为日常工作它是完全可以胜任的。如果和TortoiesCVS结合起来,可以给你相当理想的CVS工作平台。
同时,它也可以在所有jdk环境中运行,不仅仅局限于windows平台。
IDE集成
对程序员来说,真正在编码的时候,IDE才是每天接触多的环境。如果能够在熟悉的IDE中使用CVS,当然实用性增强很多。Visual source safe 在Microsoft的开发工具产品VB,VC中集成得相当出色,也大大提高了使用使用Microsoft开发平台的工作效率。
下面我们来看看一下在流行的java开发工具中如何使用CVS。
IBM Visual age for java IDE集成 插件 --- vajcvs (未完成)
Visual age for java支持一个开放的Tool API,CVSin是这样的一个tool。
下载地址:
安装参见其内部readme文件。
Borland jBuilder 内置CVS支持
jBuilder很早在3.0中内置CVS支持,而且当时cvs是jbuilder一个正式支持的源代码管理工具。在新的Builder 6中,当然对CVS也支持得很好。
完善的设计,的强大工作平台 --- Eclipse
及内置CVS支持IBM新的开放式集成开发环境,将是IBM visual age 系列开发工具的下一个平台。它提供CVS作为基础集成的一部分。在Eclipse中访问CVS是一件相当轻松自如的事情,Eclipse按照自己的需要封装了CVS,你可以看到,和其他访问方式完全不同,Eclipse是到现在为止强大的CVS工作平台。
Visual Studio IDE集成插件 -- CVSIn (未完成)
这是一个用于Visual Studio的CVS插件,您可以利用它不离开IDE集成环境进行checkout/commit的操作。