我需要创build和操作一些学生SVN仓库,并创build一些细粒度的访问控制,以防止学生作弊,同时允许教师访问修订历史logging。
对于单个存储库,我可以使用WebDAV并configurationAuthzSVNAccessFile来允许访问。 但是我需要多个存储库。 我可以设置多个<Location>指令,但这是冗长的,任何时候我需要添加或删除一个repo,它需要一个Apache重新加载。 有一种方法来指定一个“父path”,其中包含一些与SVNParentPath的回购,但有没有相应的方法来映射authz文件到这些回购?
您可以使用一个authz文件实际上pipe理多个存储库的权限。 例如:
[foo:/] @students = rw @instructors = r [bar:/] @students = rw @instructors = r
在这种情况下,冒号前面的名称是存储库的名称,即SVNParentPath之后path的第一个组件。
您可以使用.htaccess文件使用基本的HTTP身份validation,或者使用mod_auth_mysql从SQL数据库中提取身份validation信息。 从这个angular度来说,构build一个前端来pipe理SQL表中的权限是非常简单的。