BillKnow.com

Who Know ? Bill Know!

06 六月
0Comments

Linux下访问CVS

在SVN中,可以通过脚本将仓库中的数据主动同步到本地,对于CVS不知道有没有这样的功能。公司的CVS不是我管理,所以只能采用本地主动同步的服务器的方法。

我们的CVS配置了SSH认证,之前在windows上通过wincvs等图形化工具比较好办,在linux上就只有我自己动手配置了,总结如下:

1.将私钥拷贝到/user/.ssh/ 目录,并命名为identity,在进行SSH认证的时候,会自动从此目录找密钥。

2.将identity的权限修改为700,这个地方比较关键的是,不能对其他人员赋予访问私钥的权限,否则认证的时候会发出警告并认证不成功,这应该是自我保护作用。我首先将权限修改为777后认证失败,看了警告后将权限进行了修改。

3.相关命令:

CVS服务器是192.168.0.3,上面CVSROOT路径是/home/cvsroot,另外一台开发客户机是192.168.0.4,如果 tom在2台机器上都有同名的帐号,那么从192.168.0.4上设置了:
export CVSROOT=:ext:tom@192.168.0.3:/home/cvsroot     环境变量
export CVS_RSH=ssh     环境变量
tom就可以直接在192.168.0.4上对192.168.0.3的cvsroot进行访问了(如果有权限的话)
cvs checkout project_name
cd project_name
cvs update

cvs commit

4.通过linux的crontab功能,实现1分钟自动同步服务器数据。