Datasheet

“main” (Installation and Administration) 2004/6/25 13:29 page 566 #592
i
i
i
i
i
i
i
i
23.5 Introduction to Subversion
Subversion is a free open source versioning control system and is widely
regarded as the successor to CVS, meaning that features already introduced
for CVS are normally also in subversion. It is especially recommended
when the advantages of CVS are sought without having to put up with its
disadvantages. Many of these features have already been briefly introduced
in Section 23.1.3 on page 557.
23.5.1 Installing a Subversion Server
The installation of a repository database on a server is a relatively simple
procedure. Subversion provides a dedicated administration tool for this
purpose. The command to enter for creating a new repository is:
svnadmin create /path/to/repository
Other options can be listed with svnadmin help. As opposed to CVS,
subversion is not based on RCS, but rather on the Berkeley Database. Make
sure not to install a repository on remote file systems, like NFS, AFS, or
Windows SMB. The database requires POSIX locking mechanisms, which
these file systems do not support.
The command svnlook provides information about an existing repository.
svnlook info /path/to/repository
A server must be configured accordingly in order to allow other users to
access the repository. It is possible to resort to the Apache webserver to this
end or alternatively make use of svnserve, the server packaged with sub-
version. Once svnserver is up and running, the repository can be accessed
with the schemata svn:// or svn+ssh:// in a URL. Those users which
are supposed to authenticate themselves when calling svn can be set in
/etc/svnserve.conf.
A decision in favor or against one or the other depends on many factors. It
is hence recommended to browse the subversion book (More information
about it can be found in section 23.5.3 on page 569
566 23.5. Introduction to Subversion