CVSNT的介绍和安装
钱五哥
http://spaces.msn.com/members/qianwuge/
2005年7月12日
CVSNT是CVS系列的一个新版本,虽然名字叫CVSNT,其实是源代码是支持多个平台的 CVSNT同时支持Windows NT/2000/XP/2003,Mac OS,Unix和Linux,经过了6年的发展, CVSNT从一个CVS的Windows移植开始,目前已经接近产品水平了,CVSNT的版本是2.5。
与CVS相比,CVSNT支持很多更专业的特性(http://www.cvsnt.com/cvspro/compare.htm),特别是提供了更多的安全性,与操作系统集成的也更好。
与SVN相比,CVSNT仍然有很多优点(http://www.cvsnt.com/cvspro/svn.htm),特别是 CVSNT具有很多的第三方工具,这显然是SVN这个后起之秀在短期内无法赶上的。
目前CVSNT专业版仍然是Open Source的自由软件,CVSNT的合作人,March Hare Software提供对OS/400 V4R5, V5R1的安装和收费支持服务,由于提供了个性化的安全性服务和Patch,价格还真不便宜从2000英镑~35000英镑不等,企业级的服务面议:)
Devguy提供了Windows安装的介绍(http://devguy.com/cvsnt),不过针对的是2.0版的CVSNT,某些配置已经不相同了,综合一些其他的资料和以前安装CVSNT1.0的检验,给出以下的简明手册。
1. 下载和安装CVSNT
直接到http://www.cvsnt.org/下载安装程序,选择全部安装就可以了,安装后提示要重新启动,根据CVSNT的wiki(http://www.cvsnt.org/wiki/InstallationTips),似乎未必要重新启动,我安装以后没有重新启动,确实没有什么问题。
2. 配置CVSNT的服务和repository
CVSNT在控制面板中添加了一个设置程序,先在“service status”Tab中停止 “CVS Service”,然后选择”repository”Tab,点击Add,选择你希望CVSNT保存文件的位置,特别需要注意其中的Name,这个Name就是以后客户端配置CVSROOT时需要的。你可以配置多达64个Repository,不过并不建议如此,一个Repoistory已经足够了,只需放置多个module就好。重新启动CVSNT服务。
Jeff Hunter有一个生成Repository的指南,不过有些过时。(http://www.idevelopment.info/data/Programming/change_management/cvsnt/PROGRAMMING_Creating_a_CVS_Repository_CVSNT.shtml)
添加以后,CVSNT会在该目录下生成一个CVSROOT模块。
以后的讨论,假定你选择的目录是c:\cvsrep
3. 配置CVSNT的Binay File List
使用如下命令:
———————————————
SET CVSROOT=c:\CVSRep (估计可以不用,CVSNT支持Local协议)
cvs co CVSROOT
cd CVSROOT
notepad cvswrappers
———————————————
在Notepad中加入devguy建议的默认内容,如下:
*.cab -k ‘b’
*.class -k ‘b’
*.doc -k ‘b’
*.dll -k ‘b’
*.exe -k ‘b’
*.exp -k ‘b’
*.gif -k ‘b’
*.gz -k ‘b’
*.jar -k ‘b’
*.jpg -k ‘b’
*.jpeg -k ‘b’
*.lib -k ‘b’
*.msi -k ‘b’
*.mso -k ‘b’
*.pfw -k ‘b’
*.png -k ‘b’
*.ppt -k ‘b’
*.sit -k ‘b’
*.tar -k ‘b’
*.tlb -k ‘b’
*.vsd -k ‘b’
*.xls -k ‘b’
*.wmz -k ‘b’
*.zip -k ‘b’
保存后,运行
cvs commit (注意,请到cvsroot目录下commit) 完成修改
4. 添加pserver用户
虽然多数人不推荐使用pserver协议,原因是安全性不好,个人以为这种协议在配置方面还是比较容易的。其他的协议,比如ssapi需要和NT的登录用户集成在一起,感觉没有必要。
在c:\cvsrep\CVSROOT\目录下面创建一个文件passwd,在其中加入你希望的用户,比如
———————–
qlw:
abc:
———————–
保存一下,然后运行如下cvs命令修改用户的口令,以qlw用户为例:
cvs passwd qlw
会提示输入用户的口令,输入两次后,生效,此时c:\cvsrep\CVSROOT\passwd里面的内容可能变成:
———————–
qlw:zzOGSaD/SnEPQ
abc:
———————–
可以使用如下命令验证:
cvs -d :pserver:qlw@localhost:/cvsrep login
5. 添加module
有两种方法添加module,其一是修改CVSROOT模块中的modules文件,加入你的module就可以,另外一种方法是import,我比较推荐后者。
首先清理一下自己的项目文件,删除不必要的文件,比如VC6项目中的Debug,Release目录,*.aps *.clw, *.ncb, *.plg, *.ilk, *.sbr, *.obj, *.pch,已经生成的lib,exe和dll文件。
在项目的外层目录下运行:
cvs -d :pserver:qlw@localhost:/cvsrep import xxx (xxx是项目根目录)
折腾一会后,就会check in所有的文件,这时会出现c:\cvsrep\xxx目录,这说明已经成功了
6. 客户端安装和配置
可以使用的客户端相当多
WinCVS: http://www.wincvs.org
TortoiseCVS: Explorer的插件, http://www.tortoisecvs.org/ (推荐)
CVSIn: VC6的插件, http://www.geocities.com/kaczoroj/CvsIn/ (仅提供了源代码:(
到CVSNT上面找: http://www.cvsnt.org/wiki/ThirdPartyTools
到Wincvs上面找: http://www.wincvs.org/
客户端的配置只有一个问题,就是写对:pserver的字符串,参见前面的介绍吧
(版权归钱五哥所有,转载请注名出处,商业化转载请联系作者)