Permissions 如何控制CVS存储库中的文件权限?

Permissions 如何控制CVS存储库中的文件权限?,permissions,cvs,Permissions,Cvs,目前,一些用户的umask设置方式导致了对常规文件的执行权限,我希望避免这种情况 是否有一种方法可以强制所有签入的文件仅在某些例外情况下读取 在CVS中处理这个问题的推荐方法是什么?我不确定这是否是最好的解决方案,但我可能会使用committenfo、commitcheck和commit_prep.pl对repo的CVSROOT目录中的cvswrappers文件做些什么。如果您没有commit_prep.pl,那么可以使用类似以下内容: 网络上有很多例子,如果你的repo中还没有提交*文件,那

目前,一些用户的umask设置方式导致了对常规文件的执行权限,我希望避免这种情况

是否有一种方法可以强制所有签入的文件仅在某些例外情况下读取


在CVS中处理这个问题的推荐方法是什么?

我不确定这是否是最好的解决方案,但我可能会使用committenfo、commitcheck和commit_prep.pl对repo的CVSROOT目录中的cvswrappers文件做些什么。如果您没有commit_prep.pl,那么可以使用类似以下内容:

网络上有很多例子,如果你的repo中还没有提交*文件,那么只需搜索这些提交*文件即可

请注意,正如本文所建议的,权限实际上只在文件的第一次提交期间设置,之后,您需要“手动”修改存储库本身的权限

在commit_prep.pl中,您可以在首次提交文件之前,使用chmod ugo-x清除exec权限


此解决方案假定您使用的是linux。

Cvs命令选项监视也阻止恢复文件权限。如果被监视,当文件被签出时,它将是只读的。从cvs手册页:

$ cvs watch --help_options

Usage: cvs watch {on|off|add|remove} [-lR] [-a <action>]... [<path>]...

on/off: turn on/off read-only checkouts of files
$cvs监视--帮助\u选项
用法:cvs监视{on | off | add | remove}[-lR][-a]。。。[]...
打开/关闭:打开/关闭文件的只读签出
所以,使用cvs监视文件名从存储库中删除签出,使其每次都是只读的