2010-11-22 44 views
0

我有所有我的项目 svn库。在svn我也有一个目录,其中包含编译(如.dll,.swc),这些项目直接引用。SVN:只显示SVN树的特定部分用户

我想要另一个开发人员为我做一个项目,我不想打开我的整个svn树。如果它只是关于不能提交,我只会设置在authz的读权限,但我不希望他看到我所有的其他源代码

我不希望他做两个结账,一个用于项目,另一个用于库文件夹,因为如果我尝试检查并编译它,所有相对路径都会被搞砸了

所以想以下几点:树干由该用户的校验应能包含所有的文件夹结构,该用户相关目录,省略所有非相关结帐。

即: 如果我的svn svn签看起来是这样的:

-trunk 
|-BinLibrary 
|-Project 1 
|-Project 2 
|-ExternalProjects 
|-Project 3 

我想他结帐看起来像这样:

-trunk 
|-BinLibrary 
|-ExternalProjects 
|-Project 3 

这可能吗? 如果是:如何?

任何帮助表示赞赏!

编辑:我使用的svnserve在Windows环境(无阿帕奇)

回答

1

在AuthZ的文件中,在username = permission线,留下许可空表示相应用户无法访问,甚至没有读取。 In the manual,考虑这个例子:

[calc:/branches/calc/bug-142] 
harry = rw 
sally = r 

[calc:/branches/calc/bug-142/secret] 
harry = 

哈利不能读取秘密。

您可以为其他用户授予整个存储库的权限,然后以特定路径读写。

+0

+1使用此技术不会产生确切的请求结果。尽管目录名称Project 1和Project 2将出现在结帐上,但这些目录下不会有任何内容。如果用户试图向本地工作副本上的这些目录添加内容,他们可以,但他们将无法将其提交到存储库。 – jgifford25 2010-11-22 15:45:22

+0

但是,如果我在authz“[/] username =”中指定了某个地方并且在“[/ trunk/externalprojects/project 3] username = rw”svn中指定了“授权失败”。如果我授予读取权限在一切都很好(但公开所有来源,我不想...)。 – 2010-11-22 15:59:16

+0

我必须补充说,在svnserve.conf中,我指定了“anon-access = none”,并将其缺省值设置为“auth-access”。 – 2010-11-22 16:02:27

0

也许给这个一展身手:

Per Directory Access Control

+0

这个链接是关于使用Apache服务器 - 但我在Windows环境中使用svnserve(现在添加到我的问题的信息) - 但无论如何:谢谢! – 2010-11-22 14:10:01