On Sat, Jul 23, 2011 at 05:55:58AM -0500, Jonathan Nieder wrote: > Meanwhile the need to help people get started with their own svn > servers is documented in Bug#173960, as you mentioned. > > Care to suggest wording for either? Realistically speaking, that's > the simplest way to get this fixed soon and well. :)
Hi, I just happened to set up a small instance and wrote down the necessary steps into the attached file for easy inclusion into README.Debian or similar. I only documented the inetd-svnserve access method (using xinetd) since that's what I used. Of course it could be extended in many ways (other access methods, import stuff, ..) but it's a start anyway and one of the most common things to do for a new user. What do you think? Regards, Martin
Setting up a Repository
-----------------------
The subversion package in Debian does not automatically set up a subversion
repository during installation. In order to create one and provide access to it
from the network, do the following steps manually.
1. Create a directory for repositories. A good default choice is '/var/svn':
mkdir /var/svn
2. Create a user 'svn' which will own the repository files and under which the
svnserve process will run. Note that the "homedir" of that user is the
directory chosen above, so adjust that if necessary:
useradd -d /var/svn -r -s /bin/false svn
3. Create your first repository. Choose a suitable name for <reponame>:
svnadmin create /var/svn/<reponame>
Hand over ownership of the repository files to user 'svn':
chown -R svn:svn /var/svn
4. In order to make the repository reachable from the network, you need to
choose an access method. Options are:
(a) running svnserve from inetd,
(b) a standalone svnserve process,
(c) using svn over ssh, or
(d) using Apache to serve the repository via http.
You find more details about advantages and disadvantages in the SVN book.
We only describe (a) here and assume you have xinetd installed (package
xinetd on a Debian system). Place a file 'svnserve' into /etc/xinetd.d with
the following contents:
# default: on
# description: Subversion server
service svn
{
port = 3690
socket_type = stream
protocol = tcp
wait = no
user = svn
server = /usr/bin/svnserve
server_args = -i -r /var/svn
}
Finally, trigger a configuration reload of xinetd:
/etc/init.d/xinetd reload
You can now checkout the repository from other machines on the network:
svn co svn://<machinename>/<reponame>
Note that you may need to adjust authorization settings in
/var/svn/<reponame>/conf/svnserve.conf in order to have write access etc.
signature.asc
Description: Digital signature

