svnserve, a Custom Server
The svnserve program is a lightweight server, capable of speaking to clients over
TCP/IP using a custom, stateful protocol. Clients contact an svnserve server by using URLs that begin with
the svn://
or svn+ssh://
scheme. This section will explain the
different ways of running svnserve, how
clients authenticate themselves to the server, and how to configure
appropriate access control to your repositories.
Invoking the Server
There are a few different ways to run the svnserve program:
Run svnserve as a standalone daemon, listening for requests.
Have the Unix inetd daemon temporarily spawn svnserve whenever a request comes in on a certain port.
Have SSH invoke a temporary svnserve over an encrypted tunnel.
Run svnserve as a Microsoft Windows service.
svnserve as daemon
The easiest option is to run svnserve as a standalone
“daemon” process. Use the -d
option for
this:
$ svnserve -d $ # svnserve is now running, listening on port 3690
When running svnserve in
daemon mode, you can use the --listen-port
and --listen-host
options to customize the
exact port and hostname to “bind” to.
Once we successfully start svnserve as explained previously, it makes
every repository on your system available to the network. A client
needs to specify an absolute path in the
repository URL. For example, if a repository is located at /var/svn/project1, a client would reach it
via svn://host.example.com/var/svn/project1
. To increase
security, you can pass the -r
option to svnserve, which restricts ...
Get Version Control with Subversion, 2nd Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.