Allow per path SVN permissions

As I understand it svn allows for per path permissions, as well as the entire repository.

Eg say I have the following:
[code]
trunk
|-bin
|-source
|-media
[/code]
I want it so someone how access to trunk/bin and trunk/media but not trunk/source however there does not seem to be anyway to do this, and id rather not create different repositories for every permission level I want.

Forum Topic Options

Feeds

Forum Topic and Comments

rs on Wed 05 Aug, 2009

It should be relatively easy to do, though I did opt out from it – the reason is that:

Performance

Turn on this option will cause Subversion to check the path and perform an authentication check on each and every request - it does take a performance hit

Syncing

It requires additional overhead for the owner for maintaining the ACL and the repository structure in sync.

For e.g. say I renamed trunk/bin to trunk/scripts – then I need to go back into the web console and rename it there as well.

However, if you do want to have this level of control, I do suggest creating a top level repository with “trunk” at the highest level and using svn:externals to link the child repositories underneath “trunk” and do the permissions on the child repositories — i.e. “trunk” is a repository called abc while “trunk/bin” is an svn:external to repository xyz. abc and xyz have different permissions.

For the performance hit that it provides and the additional manual overhead, it just seems that the ACL on paths is just not a fair trade-off, considering you can create unlimited number of repositories here.

 

gct.engineering on Wed 02 May, 2012

+1 vote for individual folder permissions. Is per-path permission still a big performance concern? I know that SVN externals slows down every svn update, so I would prefer not to use individual repos for each permission.

It would also be nice to be able to create credentials without requiring the user to obtain an xp-dev account.

 

You do not have sufficient permissions to comment