I've found quite a few hits on Google regarding this subject, but I have not found any elegant solutions to this problem.
I'm running SVN 1.6.9 (r901367) on FreeBSD (built from ports). I have the svnserve daemon running. I'm trying to have some areas of my repository be public (requiring no auth) and others be private (requiring auth even for read access). So, lines in my svnserve.conf: [general] anon-access = read auth-access = write password-db = passwd authz-db = authz realm = Rambetter's Code Repository [sasl] use-sasl = false Lines from passwd: [users] maj = fakepass rambetter = fakepass Lines from authz: [aliases] [groups] [/] rambetter = rw * = r [/repos/urt-playerdb] rambetter = rw * = [/repos/ioUrT-server-4.1-supersecret] maj = rw * = [/repos/jblockout] rambetter = rw * = [/repos/ioquake3-server-1.36-rambetter] rambetter = rw * = [/repos/ioUrT-server-4.1-rambetter] rambetter = rw * = I cannot perform an "svn log" from the paths above that have the "* =" (to restrict read access to the public). The error message is "svn: Item is not readable" when I perform and "svn log" on these restricted directories. I know this is a common problem, but is there an elegant way to to have both publicly readable and protected sections in the same repository? I have done one thing in the past, which is to create a user called "anonymous" with the empty password, and I tell the public that to check out they type this: svn checkout svn://daffy.nerius.com/repos/ioUrT-server-4.1 --username="anonymous" --password="" ... but this approach seems to be very clumsy. Another solution that comes to mind is to start a whole new repository with a separate svnserve daemon. How would I move over an entire directory, all history included, if I were to do this? Any other solutions?