我正在为 Web 开发设置共享工作副本。大多数用户不具备 unix/命令行能力,因此他们通过 Samba 并使用 TortoiseSVN 连接到网络服务器上的工作副本。我已经在 bash 和 samba 上设置了默认的 umask,以便为用户和组提供读/写访问权限。我已将所有用户都设为他们所属的默认组“webteam”。这意味着他们创建的任何文件都可以由他们和团队的其他成员写入。
我们使用的是 svn 1.6 版(因为它是 RHEL 的默认设置)。umask 和组所有权的东西工作正常,但是当我运行结帐时:
# svn co svn://scythia/www .
如果我然后进入一个包含一些文件的目录,首先我检查 .svn 目录的权限:
drwxrwxr-x 6 geofa webteam 4096 Jul 3 09:28 .svn
这就是我想要的。所有子目录也是如此。但是文件获得了错误的权限:
[geofa@scythia dac_property]$ ll .svn
total 20
-r--r--r-- 1 geofa webteam 838 Jul 3 09:28 entries
drwxrwxr-x 2 geofa webteam 4096 Jul 3 09:28 prop-base
drwxrwxr-x 2 geofa webteam 4096 Jul 3 09:28 props
drwxrwxr-x 2 geofa webteam 4096 Jul 3 09:28 text-base
drwxrwxr-x 5 geofa webteam 4096 Jul 3 09:28 tmp
所有文件都获得相同的只读设置:
[geofa@scythia .svn]$ ll prop-base/
total 16
-r--r--r-- 1 geofa webteam 30 Jul 3 09:28 dac_property.info.svn-base
-r--r--r-- 1 geofa webteam 30 Jul 3 09:28 dac_property.module.svn-base
-r--r--r-- 1 geofa webteam 30 Jul 3 09:28 dac_property.pages.inc.svn-base
-r--r--r-- 1 geofa webteam 30 Jul 3 09:28 dac_property_results.pages.inc.svn-base
这些权限意味着它对我(geofa)工作正常,但所有其他用户的权限被拒绝。某处是否有 SVN 的 umask 设置?