0

There are many SVN repositories all hosted under the same directory. I would like to expose one of them (extra) to people with different credentials.

Why does the following apache configuration does not work for http://example.net/svn/extra but works for all the other SVN repos like http://example.net/svn/proj1.

The error I get when I attempt a checkout of http://example.net/svn/extra is:

[error] [client x.x.x.x] (20014)Internal error: Can't open file '/home/trac/svn/svn/format': No such file or directory
[error] [client x.x.x.x] Could not fetch resource information.  [500, #0]
[error] [client x.x.x.x] Could not open the requested SVN filesystem  [500, #2]
[error] [client x.x.x.x] Could not open the requested SVN filesystem  [500, #2]

Please note that subversion tries to access /home/trac/svn/svn/format. Where does the svn/svn path come from?

This is the configuration:

    <Location /svn/extra>
            DAV svn
            SVNPath /home/trac/svn/extra
            AuthType Digest
            AuthName "DevsExtra"
            AuthUserFile /home/trac/devs-extra.digest
            Require valid-user
    </Location>

    <Location /svn>
            DAV svn
            SVNParentPath /home/trac/svn/
            AuthType Digest
            AuthName "Devs"
            AuthUserFile /home/trac/devs.digest
            Require valid-user
    </Location>

1 Answer 1

0

Rather than using multiple Apache locations to handle authentication, I'd suggest taking a look at mod_authz_svn for Apache since it's designed for access control on a per-path basis. This way you can do something like the following to give a subset of developers access to that folder:

[groups]
devs-extra = bob, bill, jim, sally

[svn:/extra]
@devs-extra = rw

http://svnbook.red-bean.com/en/1.5/svn.serverconfig.pathbasedauthz.html

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .