免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1404 | 回复: 2
打印 上一主题 下一主题

CVS 服务器配置高级议题。 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2005-12-09 12:44 |只看该作者 |倒序浏览
作为世界上广泛使用的版本控制系统---cvs,在国内的普及程度却相对较低。

为满足项目开发的实际需求,最近对cvs服务器的配置作出了如下探讨:
(关于cvs服务器的基本设置可参考论坛内其他贴子。)

1。控制除管理员外的其他用户实用cvs管理命令cvs admin.
cvs默认系统内cvsadmin组用户才能使用cvs admin 命令。所以,很简单,你只需要在系统内建立cvsadmin组,然后只将管理员添加到组内即可。
2。建立只读用户。
在开发过程中,通常有一个人负责监督项目,而不对项目作任何修改。这是我们应该为其建立一个只读用户。
在$CVSROOT/CVSROOT/ 下建立passwd文件。写入:
anonymous::someSysUser
文件格式是:
登陆用户名:登陆密码:映射到系统的用户名。
并表明其为指定用户,在$CVSROOT/CVSROOT/ 下建立readers文件。写入:
anonymous

readers文件只需写入登陆用户名即可。
3。针对特定目录对特定用户限制其修改权限。
cvs 在用户执行commit,checkin提交操作时会检查$CVSROOT/CVSROOT/commitinfo文件。所以只需要让控制用的脚本放在这里就可以了。
ALL $CVSROOT/CVSROOT/commit_prep %r/%p %s
ALL $CVSROOT/CVSROOT/cvs_acls -u $USER %r/%p %s
上述两个脚本存在于cvs源码文件的/contrib目录下。具体用法可参考它的帮助。
建立$CVSROOT/CVSROOT/cvsacl文件。写入:
deny||CVSROOT
allow|someCVSadministrator|CVSROOT
文件的格式是:(deny或者allow)|用户名|需要限制的目录(或者文件名)
上述的内容实现了对$CVSROOT/CVSROOT/目录的访问限制,只有someCVSadministrator可以checkin,commit这个目录。

4。当某用户提交修改时,进行mail通知。
也是在通过commit操作触发。建立$CVSROOT/CVSROOT/cvsacl文件。写入(例如):
^CVSROOT\(/\|$\) Mail -s "%p %s" someone@somedomain.org
格式与commitinfo一致:提交的目录(或文件)  执行的命令(或脚本)
当然mail得事先配置好。

5。防止用户添加二进制文件时,没有用-kb指定。
通常向cvs添加除纯文本以外的文件时,需要用cvs add -kb someBinaryfileName 来指定不进行文件内存在的cvs关键字的扩展。如果添加文件的人忘了指定,就常会造成别的用户checkout下来之后无法正常打开文件。这一点可以通过服务器配置得到避免。
编辑$CVSROOT/CVSROOT/cvswarppers.写入(例如):
*.mpp -k 'b'
*.pdf -k 'b'
*.doc -k 'b'
*.xls -k 'b'
*.ppt -k 'b'
*.chm -k 'b'
以上控制了以.mpp,.pdf... ...为后缀的文件默认以二进制添加。

应该还有,不过今天就写这些了。当然以上这些大都能从cvs manual上了解到,而且有些理解不免肤浅或错误,不过还是希望我写的会对那些想在他们的实际开发中用cvs进行版本控制的人会有帮助。
另外在cvs使用上有什么问题,欢迎大家一起探讨。

[ 本帖最后由 xb_parasite 于 2005-12-9 12:53 编辑 ]

论坛徽章:
0
2 [报告]
发表于 2005-12-21 19:45 |只看该作者
项目监督的只读有什么意义?

论坛徽章:
0
3 [报告]
发表于 2006-08-02 10:45 |只看该作者
质量管理,项目监督者。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP