Wes
Wes

Reputation: 7057

SVNServ deny write access to a directory via wildcard match

We have a requirement that every piece of code that makes it into production will be reviewed by a senior developer.

The way I have envisioned this working is by a naming convention for branches that regular developers cannot check code into.

Following the SVN recomended directory structure this translates into something like.

[project-name]/trunk/
[project-name]/branches/
[project-name]/branches/development-01
[project-name]/branches/development-02
[project-name]/branches/task-increasefontsize
[project-name]/branches/release-01
[project-name]/branches/release-02
[project-name]/tags/

So in the authz file I would like to have something like the following

[/]
@developers = rw

[/*/branches/release-*]
@developers = r
@senior_developers = rw

However I can't find any evidence that SVN supports * (or any other wildcard character).

Is such a thing possible or do I need a pre-commit hook?

Upvotes: 2

Views: 567

Answers (2)

khmarbaise
khmarbaise

Reputation: 97407

It is not possible to have wildcards as you like to use them. For this purpose you should take a look at svnperm.py script (just google for it) it will match exactly this purpose.

Upvotes: 0

Wes
Wes

Reputation: 7057

It is possible to do a directory structure of

[project-name]/trunk/
[project-name]/branches/development-01 
[project-name]/branches/development-02 
[project-name]/branches/task-increasefontsize
[project-name]/branches/release-01
[project-name]/branches/release-02
[project-name]/tags/
[project-name]/releases/

and deny access to releases but that still leaves you having to do one denial listing per project and worse its not adhering to the SVN standard project structure.

Upvotes: 1

Related Questions