如何在svn上为每个拥有多个存储库的用户设置权限?

时间:2013-05-22 23:35:49

标签: svn debian

我正在使用svn,我有这个疑问,我安装了svn服务器(正常方式),我现在用svnadmin create project创建了回购,我使用linux用户使用以下协议访问它们

svn+ssh://user@serverip/project

如果我只想让一个用户拥有一个项目,它可以正常工作,如果没有,我必须创建组,将用户分配到组并授予其手动chmod文件夹的权限

我检查了修改authz和passwd文件(在/ config文件夹中),但没有。

知道什么是设置存储库,用户和权限的正确方法?

感谢。

2 个答案:

答案 0 :(得分:1)

你必须阅读:

http://www.gentoo-wiki.info/HOWTO_Trac_with_Apache2_SVN_and_multiple_Repositories

希望这可以解决您的问题

答案 1 :(得分:1)

当进行svn + ssh身份验证时,每个用户在服务器上都有自己的用户帐户,并且您希望他们都具有读/写访问权限,那么您需要:

  • 创建用户可以属于的组(svn-groupname)
  • chmod -R 770 / var / svn / reponame
  • chmod -R g + s / var / svn / reponame
  • chgrp -R svn-groupname / var / svn / reponame

我强烈建议您通过以下方式将其正式化:

  • 以一致的方式命名您的存储库。这样具有用户属于同一组的所有存储库具有一致的前缀。这允许您使用通配符来应用权限。
  • 创建/ usr / local / sbin shell脚本(svn_set_repository_permissions.sh)以执行权限设置。这使您可以在以后运行单个脚本,如果权限搞乱或添加新存储库。
  • 决定是否要使用700(仅限用户),750(用户写入,组读取),770(用户和组写入)或其他一些权限集。

如果您同时执行svn + ssh身份验证和http身份验证,那么您将需要更多地打开权限并使用SVN授权文件来限制用户。