我们想要启动两个新的开发项目:Project1
和 Project2
。我们有两组开发人员:
GroupA
应对这两个项目拥有完全(读 + 写)访问权限,并且GroupB
不应具有对Project1
的访问权限,但应具有对Project2
的完全访问权限。
我关注了Jeff Atwood's tutorial并成功安装subversion 1.7.6在 Windows Server 2003 上作为 Windows 服务。我通过添加文件夹和文件并提交更改来测试系统,一切都按预期工作(客户端是 TortoiseSVN 1.7.9 )。
不幸的是,我不知道如何在 authz
中配置开发者组的访问权限。开发人员可以连接到服务器,但在尝试提交某些内容时收到授权失败
消息。
感谢您提前提供的帮助。
最佳答案
我建议您阅读SVNBook (Version Control with Subversion) 。请参阅描述 the path-based authorization 的章节。我认为本章回答了您的问题。
下面提供了示例 authz
文件。请注意,我没有在 /repo/Project1
存储库目录上为 GroupB 明确设置“禁止访问”规则。我将“no access”设置为“everyone”的根节点,然后该权限将由其子项继承,除非您明确提供对文件夹或文件的访问权限。
[/]
*=
[groups]
GroupA=john,sally
GroupB=harry,george
[repo:/Project1]
@GroupA=rw
[repo:/Project2]
@GroupA=rw
@GroupB=rw
我想指出,如果您使用VisualSVN Server Manager,您可以大大简化管理SVN用户权限的过程。 。
它提供了舒适的 UI 来管理用户权限,您会发现这非常有用:
2016 年更新
要管理 VisualSVN Server 上托管的 SVN 存储库的访问规则,您现在可以使用与 VisualSVN Server 一起打包的 PowerShell cmdlet。从版本 3.4 开始,VisualSVN Server 包含 PowerShell 模块,可以帮助您完成此任务。您正在寻找的 cmdlet 是
阅读文章KB88: VisualSVN Server PowerShell Cmdlet Reference查看 VisualSVN Server PowerShell cmdlet 的完整列表。
关于windows - 如何在 Windows 上配置 svn authz?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12800467/