Subversion-1.4.4
Introduction to Subversion
Subversion is a version control
system that is designed to be a compelling replacement for
CVS in the open source community.
It extends and enhances CVS'
feature set, while maintaining a similar interface for those
already familiar with CVS. These
instructions install the client and server software used to
manipulate a Subversion
repository. Creation of a repository is covered at Running a Subversion Server.
Package Information
-
Download (HTTP):
http://subversion.tigris.org/downloads/subversion-1.4.4.tar.bz2
-
Download MD5 sum: d4aa5aeb09acb3307841022d279ab895
-
Download size: 4.7 MB
-
Estimated disk space required: 109 MB (additional 74 MB to
install all bindings and 405 MB to run all test suites)
-
Estimated build time: 1.5 SBU (add 1.7 SBU for bindings and
2.2 SBU to run test suites)
Subversion Dependencies
Required
Apache-2.2.8 (for the APR only) or Apache Portable Runtime or
Subversion dependencies (see the INSTALL
file for information on how to utilize
this package)
If you require the Berkeley DB
back-end hooks in Subversion to
build or support BDB based repositories, you must have Berkeley DB linked into the APR-util library. There is information in the
Apache-2.2.8 instructions that shows the
required parameters to pass to the configure script when building
any of the APR-util packages.
Optional
Python-2.5.2 (required to run the test suite),
Apache-2.2.8 (if you have Apache Portable Runtime installed), neon*, and serf
* The configure
script will warn that the installed neon version is not supported if the version
is greater than 0.26.2. You can circumvent this warning by passing
--disable-neon-version-check
to the
configure command.
Note that this may or may not work, depending on the version of
neon you have installed, but
neon-0.26.3 is known to work.
Optional to Build the Java Bindings
JDK-6 Update 5 or Dante or Jikes,
and JUnit-4.3.1 (to test the Java bindings)
Optional to Build the SWIG Bindings
SWIG**, Python-2.5.2, and Ruby-1.8.6-p111
** The configure
script will issue warnings if the installed version of SWIG is greater than 1.3.29, but will attempt
to use it anyway if you build the SWIG bindings. Versions of SWIG up to 1.3.31 are known to work.
User Notes: http://wiki.linuxfromscratch.org/blfs/wiki/subversion
Installation of Subversion
Install Subversion by running the
following commands:
sed -i 's/@SVN_APR_INCLUDES@/& @CPPFLAGS@/' \
subversion/bindings/swig/perl/native/Makefile.PL.in
./configure --prefix=/usr &&
make
If you have Doxygen-1.5.2 installed and you wish to build
the API documentation, issue: doxygen
doc/doxygen.conf.
If you passed the --enable-javahl
parameter to configure and wish to build the
Java bindings, issue the following command:
make javahl
If you have the necessary dependencies installed and you wish to
build the Perl, Python and/or Ruby bindings, issue any or all of the
following commands:
make swig-pl &&
make swig-py &&
make swig-rb
To test the results, issue: make
check.
To test the results of the Java bindings build, issue make check-javahl. Note you must
have the JUnit testing framework
installed.
To test the results of any or all of the SWIG bindings, you can use the following
commands:
make check-swig-pl &&
make check-swig-py &&
make check-swig-rb
Now, as the root
user:
make install &&
install -v -m755 -d /usr/share/doc/subversion-1.4.4 &&
cp -v -R doc/* /usr/share/doc/subversion-1.4.4
If you built the Java bindings, issue the following command as the
root
user to install them:
make install-javahl
If you built any of the SWIG
bindings, issue any or all of the following commands as the
root
user to install them:
make install-swig-pl &&
make install-swig-py &&
echo /usr/lib/svn-python \
> /usr/lib/python2.5/site-packages/subversion.pth &&
make install-swig-rb
Command Explanations
sed -i '...'
.../Makefile.PL.in: This command is used to fix a
problem with compiling the Perl
bindings. It can be ommitted if you're not building the bindings.
--with-neon=<prefix>
: This option
should be used if you wish to use a system-installed version of
neon.
--with-apr=<prefix>
--with-apr-util=<prefix>
: These
options should be used if you wish to use the system-installed
version of the APR. Ensure you
identify the correct installation prefix.
--with-apxs=/usr/sbin/apxs
: This option
should be used to identify the system-installed version of the
apxs command
installed during the Apache HTTPD
installation as apxs
might not be in an unprivileged user's PATH
and won't be properly discovered.
--with-installbuilddir=/usr/lib/apr-0
:
This parameter is used (and only has an effect if you used the
Subversion dependencies package)
to force the installation of some APR-related support programs to
/usr/lib/apr-0
instead of
/usr/build
.
Configuring Subversion
Config
Files
~/.subversion/config
and
/etc/subversion/config
Configuration Information
/etc/subversion/config
is the
Subversion system-wide
configuration file. This file is used to specify defaults for
different svn
commands.
~/.subversion/config
is the user's
personal configuration file. It is used to override the
system-wide defaults set in /etc/subversion/config
.
Contents
Installed Programs:
svn, svnadmin, svndumpfilter, svnlook,
svnserve, svnsync and svnversion
Installed Libraries:
libsvn*.{so,a} and optionally, a Java
library, the mod_dav_svn.so, and mod_authz_svn.so Apache HTTP DSO modules and various
Perl, Python and Ruby modules
Installed Directories:
/usr/include/subversion-1,
/usr/lib/perl5/site_perl/5.8.8/i686-linux/auto/SVN (optional),
/usr/lib/perl5/site_perl/5.8.8/i686-linux/SVN (optional),
/usr/lib/ruby/site_ruby/x.x/i686-linux/svn, /usr/lib/svn-javahl
(optional), /usr/lib/svn-python (optional) and
/usr/share/doc/subversion-1.4.4
Short Descriptions
svn
|
is a command-line client program used to access
Subversion repositories.
|
svnadmin
|
is a tool for creating, tweaking or repairing a
Subversion repository.
|
svndumpfilter
|
is a program for filtering Subversion repository dumpfile
format streams.
|
svnlook
|
is a tool for inspecting a Subversion repository.
|
svnserve
|
is a custom standalone server program, able to run as a
daemon process or invoked by SSH.
|
svnversion
|
is used to report the version number and state of a
working Subversion
repository copy.
|
neon-config
|
is a script which provides information about an installed
copy of the neon
library.
|
libsvn_*.{so,a}
|
are the support libraries used by the Subversion programs.
|
libneon.{so,a}
|
is used as a high-level interface to common HTTP and
WebDAV methods.
|
mod_authz_svn.so
|
is a plug-in module for the Apache HTTP server, used to
authenticate users to a Subversion repository over the
Internet or an intranet.
|
mod_dav_svn.so
|
is a plug-in module for the Apache HTTP server, used to make a
Subversion repository
available to others over the Internet or an intranet.
|
Last updated on 2008-03-17 13:11:35 -0500