tags:

views:

574

answers:

2

I can't see the 'Collection of Repositories" page after adding authentication and access rules to svn. 'guest' can navigate to mydomain.com/svn/public and admin can see both svn/public and svn/private, but none of the users can see /svn.

Is it possible to have 'guest' access mydomain.com/svn and only see a /public link?

Here's what I have setup...

subversion.conf:

<location /svn>
DAV svn
SVNParentPath /home/subversion
SVNListParentPath on

AuthzSVNAccessFile /etc/svn-access-file

AuthType Basic
AuthName "Subversion Repository"
AuthUserFile /etc/svn-auth-file
Require valid-user 
</Location>

svn-access-file:

[public:/] guest = r @admin = rw

[private:/] @admin = rw

[groups] admin = karl.r

Thanks.

A: 

Using < location /svn/ > fixed it, all repos are now visible from /svn/ and if a guest clicks on 'private' it locks them out.

But, it only works with that trailing slash in the url. mydomain.com/svn/ works but mydomain.com/svn does not.

Karl R
+1  A: 

This may not be what you're looking for, but we've stopped using the collection of repositories page altogether. Instead we use websvn: http://websvn.tigris.org/ screenshot: http://chrison.net/content/binary/websvn2.png (not my screenshot) with the Calm theme.

Access is granted through Apache's DAV module, using this in the default site config (sites-enabled/default):

<Location /websvn>
   AuthType Basic
   AuthName "Company WebSVN"
   AuthUserFile /home/svn/dav_svn.passwd
   Require group developers
   AuthGroupFile /home/svn/dav_svn_groups
</Location>

You may not need the group line, substitute with valid-user where needed.

P.S. I just noticed that our /svn/ directory is the same as yours, won't work without the trailing /. Websvn does work though, with or without trailing slash! For now, I've redirected /svn to /svn/ in our httpd.conf, which relieves the problem. I've used the following redirect statement:

RedirectMatch ^(/svn)$ $1/
remmelt