11 12
发新话题
打印

[讨论] CVS使用中碰到的问题和困难,请高手帮忙!( 此文章被查看:1122次,被回复:10篇!! )

CVS使用中碰到的问题和困难,请高手帮忙!

最近这段时间一直在弄CVS,好不容易对这东西有了一定的了解,不过感觉还有些基本概念还不是很清楚,请教各位高人一些理解性和实施性的问题,请大家帮忙解答下!谢谢~~~
1、关于仓库
仓库存在的意义仅仅就是用来存储你的项目和CVS自身的管理文件吗?所有对库的操作,不管是基于哪个层面的(普通用户或者管理员),都还是要基于沙箱来进行,不知道是不是这样?举个最简单的例子,就是在服务器上如果执行cvs的命令肯定是不行的吧?
2、关于权限
在权限设定这块一直都有点迷糊,我没有使用CVS的那个writers文件和readers文件,因为我这边的权限控制要细化到目录,不同的目录需要有不同的权限控制机制,所以我就直接使用的Linux的控制目录属主和存取权限的方法来控制权限,不知道大家都是怎么搞的?
3、关于管理员
我现在有点搞不清楚管理员和普通用户的区别了。。。先说说我的权限控制是如何实现的,老实说有点土,不过因为时间关系也没有想到更好的办法,请大家分享下各自的经验吧!
根目录/usr/local/cvsroot/项目一
目录1————属主:系统用户A
目录2————属主:系统用户B
目录3————属主:系统用户C
本来的设想是要C用户下的CVS用户作为管理员,也就是要对目录1、2、3都有读写权限,但是因为A、B和C在一个组内,同时又要求系统用户A和B下的CVS用户不能有相同的权限(相当于A和B是对立的),所以现在我的设计是系统用户C下的CVS用户(也就是我,配置管理员)只能对目录3有读写权限,但是为了确保我对目录1和2的读写权限,我还要分别有一个A用户下的CVS用户和B用户下的CVS用户,好麻烦啊!这样一搞我就觉得我和普通的项目人员基本是一样的了。。。比如说刚刚尝试删除文件的恢复,我就以一个普通用户的身份搞定的。。。
4、关于目录的“W”权限
基于上述的权限设计,每个用户在Check Out和Update的时候都需要对相应的目录具有“写”权限,不知道是我设计权限的问题还是CVS太土了,明明只是想获取服务器上的最新文件却需要“W”权限。。。
不知道上述问题到底是我个人搞出来的还是大家也碰到过,因为我在用CVS之前对Linux的了解为0,欢迎大家踊跃发言,给小弟指点迷津!感谢~~~



© 本文为 limeng426SCMLife 共同所有,未经同意,请勿转载 ©如该文侵犯了您的版权,请联系管理员

TOP

再增加一条:CVS的权限设置是否只能到目录呢?能否想ClearCase那样把权限的控制细化到用户ID和文件的绑定?



© 本文为 limeng426SCMLife 共同所有,未经同意,请勿转载 ©如该文侵犯了您的版权,请联系管理员

TOP

问题1
仓库是为了存放数据的.
至于你是将一个项目放在一个仓库,还是把多个项目放在一个仓库,还是一个项目放在多个仓库(如项目的各模块放在不同仓库),这是由你的配置策略决定.
当然,对于CVS自身的管理文件,那肯定是一个仓库有一个CVSROOT的目录,其下就是你所指的管理文件.
至于你说的那个例子,
"在服务器上如果执行cvs的命令肯定是不行"
我不认同, 安装了cvs服务的机器上都能执行CVS命令.
所以在服务器上也是可以执行CVS命令的.



© 本文为 selinaSCMLife 共同所有,未经同意,请勿转载 ©如该文侵犯了您的版权,请联系管理员
我选择,我喜欢

TOP

问题2
不管你是否要将权限控制细分,只要你使用readers,writers机制,就必须在这两个文件里进行设置.
在这种机制下,你可以把它看作是仓库级的权限.即,在writers文件中的用户对仓库有写权限,在readers文件中的用户对仓库有读权限.
如果你想直接用LINUX系统的权限机制来设置更细的权限的话
你需要熟悉LINUX系统下的命令.
请参见linux下的 chmod, chown及其他命令的使用.

© 本文为 selina 所有,未经同意,请勿转载
©如该文侵犯了您的版权,请联系管理员
我选择,我喜欢

TOP

问题3
关于这个问题
首先要看你是用什么机制实现的权限
在acl和使用系统权限这两种方式下,设置管理员权限是不同的.
另,如果你要对一个仓库设置管理员权限的话
你可以用这个系统帐号来创建本仓库,
然后在CVS用户中,将你想设置为管理员级别的CVS用户帐号与在上述提到的系统帐号(即创建仓库的)建立映射关系!

© 本文为 selina 所有,未经同意,请勿转载
©如该文侵犯了您的版权,请联系管理员
我选择,我喜欢

TOP

问题4
不好意思,我没明白你提出的这个问题的问题到底是什么
在LINUX下是通过owner, group, other来设置权限
以group为例, 它的权限肯定是421的相加组合.

如果你是在LINUX下建立CVS服务
建议先把LINUX的有知识了解了解.
这样会有事半功倍的效果

© 本文为 selina 所有,未经同意,请勿转载
©如该文侵犯了您的版权,请联系管理员
我选择,我喜欢

TOP

引用:
原帖由 limeng426 于 2007-9-29 10:30 发表
再增加一条:CVS的权限设置是否只能到目录呢?能否想ClearCase那样把权限的控制细化到用户ID和文件的绑定?
我只能告诉你,CVS的权限是可以细到文件的.
至于实现的方法,还是那一句
先得看看你是用的什么样的权限方式.
如果在LINUX系统的权限机制
那就请使用chown,chmod命令进行设置!

© 本文为 selina 所有,未经同意,请勿转载
©如该文侵犯了您的版权,请联系管理员
我选择,我喜欢

TOP

好像我问的好多问题说到底都是因为权限控制所产生的,selina如果再用CVS或者用过CVS,能把你的权限实现以一个简单的例子来跟我说明一下吗?如果selina是版主的话就把我发的重复的帖子删掉,留一个就好了...
(1)对于你不明白的那个问题,我主要是想问:比如用户1对目录A没有写权限,是无法对目录A执行checkout和update操作的吧?
(2)对于writers和readers先放在一边,我没有用他们来设计权限.
(3)对于服务器上是否能执行cvs命令,可能是我自己的问题,我去求证一下.
(4)有一点我一定要说明一下,我现在对权限的控制确实无法细到文件,比如我以用户1的身份向库上上传一个test文件,这个文件到了库上默认的权限属性是:-r--r--r--,其他对test文件上层目录有写权限的用户也可以得到这个文件,关键是也能对这个文件进行修改.即使我在服务器上以root用户的身份通过chmod命令来修改也没办法控制...确实是这样的!在客户端上每次提交一个文件,这个文件的属主就自动更改成了最后一次提交修改的人.但是使用ls -l命令,查看权限仍然是-r--r--r--的.
(5)对于管理员的问题可能是我问的不清楚,我的意思是现在我所进行的一切操作(除了在服务器上对目录权限的设定)其他用户也都可以,比如误删除文件后的回复,创建标签,打标签等.有没有什么方法可以限制这些管理级的操作,比如一般的用户我只让他们有check out-update-edit-commit操作就可以了,不想让他们创建标签,打标签等.

© 本文为 limeng426 所有,未经同意,请勿转载
©如该文侵犯了您的版权,请联系管理员

TOP

建议你先找一些CVS和LINUX的基本资料看看
CVS入门还算是容易的

© 本文为 selina 所有,未经同意,请勿转载
©如该文侵犯了您的版权,请联系管理员
我选择,我喜欢

TOP

关于Linux下的CVS权限管理有没有个详细的攻略啊,实在是头疼。。。

© 本文为 yyllily 所有,未经同意,请勿转载
©如该文侵犯了您的版权,请联系管理员

TOP

 11 12
发新话题