如何使用通配符或正则表达式来控制svn基于路径的授权/访问控制



是否有一种方法可以使用依赖于正则表达式或通配符的基于路径的授权来控制对svn的查看/读取访问?

我知道我可以使用svnperms通过提交挂钩脚本控制写访问,但我也需要限制读/看访问,目前我有一个项目根目录,其中包含所有人都需要访问的提交文件和只有特定人才能访问的子目录。授予对顶级项目目录的访问权限会自动将其授予所有子目录。如果我可以设置一个正则表达式规则,我可以很容易地限制访问。

如果我找不到通过通配符或模式控制访问的方法,我需要重构目录结构,将顶级文件移动到我可以设置权限的子目录中。

如果你知道以下任何一种,请告诉我:

  • 可以控制视图访问的挂钩脚本
  • apache扩展,可以使用通配符或regex模式提供authz功能

截至2013年6月,不可能做到这一点。因此,问题的解决方案是重新组织存储库,这样就没有必要了。当一件事太难时,通常会导致对设计或方法的重新思考。

目前maven结构导致了这一要求:root/pom.xmlroot/project1/pom.xmlroot/project2/pom.xml等等。

我们可以用/root/pom.xml/project1/pom.xml/项目2/pom.xml等等。

我们可以如下设置svn排列,授予对顶级项目的所有读访问权限和对其项目的读写权限。如果连续集成构建服务器使用根快照填充内部maven repo,那么用户只需要签出特定的项目。

[repo:/root]
* = r
@releng = rw
[repo:/project1]
@teamOne = rw
[repo:/project2]
@teamTwo = rw

最新更新