Alien-SVN
view release on metacpan or search on metacpan
src/subversion/INSTALL view on Meta::CPAN
Apache's ServerName directive to set the server's hostname. Edit
your /usr/local/apache2/conf/httpd.conf to include:
ServerName svn.myserver.org
If you are using virtual hosting through Apache's NameVirtualHost
directive, you may need to use the ServerAlias directive to specify
additional names that your server is known by.
If you have configured mod_deflate to be in the server, you can enable
compression support for your repository by adding the following line
to your Location block:
SetOutputFilter DEFLATE
NOTE: If you are unfamiliar with an Apache directive, or not exactly
sure about what it does, don't hesitate to look it up in the
documentation: http://httpd.apache.org/docs-2.0/mod/directives.html.
NOTE: Make sure that the user 'nobody' (or whatever UID the
httpd process runs as) has permission to read and write the
Berkeley DB files! This is a very common problem.
D. Running and Testing
-------------------
Fire up apache 2:
$ /usr/local/apache2/bin/apachectl stop
$ /usr/local/apache2/bin/apachectl start
Check /usr/local/apache2/logs/error_log to make sure it started
up okay.
Try doing a network checkout from the repository:
$ svn co http://localhost/svn/repos wc
The most common reason this might fail is permission problems
reading the repository db files. If the checkout fails, make
sure that the httpd process has permission to read and write to
the repository. You can see all of mod_dav_svn's complaints in
the Apache error logfile, /usr/local/apache2/logs/error_log.
To run the regression test suite for networked Subversion, see
the instructions in subversion/tests/cmdline/README.
For advice about tracing problems, see "Debugging the server" in
http://subversion.apache.org/docs/community-guide/.
E. Alternative: 'svnserve' and ra_svn
-----------------------------------
An alternative network layer is libsvn_ra_svn (on the client
side) and the 'svnserve' process on the server. This is a
simple network layer that speaks a custom protocol over plain
TCP (documented in libsvn_ra_svn/protocol):
$ svnserve -d # becomes a background daemon
$ svn checkout svn://localhost/usr/local/svn/repository
You can use the "-r" option to svnserve to set a logical root
for repositories, and the "-R" option to restrict connections to
read-only access. ("Read-only" is a logical term here; svnserve
still needs write access to the database in this mode, but will
not allow commits or revprop changes.)
'svnserve' has built-in CRAM-MD5 authentication (so you can use
non-system accounts), and can also be tunneled over SSH (so you
can use existing system accounts). It's also capable of using
Cyrus SASL if libsasl2 is detected at ./configure time. Please
read chapter 6 in the Subversion Book
(http://svnbook.red-bean.com) for details on these features.
IV. PLATFORM-SPECIFIC ISSUES
========================
A. Windows XP
----------
There is an error in the Windows XP TCP/IP stack which causes
corruption in certain cases. This problem is exposed only
through ra_dav.
The root of the matter is caused by duplicating file handles
between parent and child processes. The httpd Apache group
explains this a lot better:
http://www.apache.org/dist/httpd/binaries/win32/#xpbug
And there's an item about this in the Subversion FAQ:
http://subversion.apache.org/faq.html#windows-xp-server
The only known workaround for now is to update to Windows XP
SP1 (or higher).
B. Mac OS X
--------
[TBD: Describe BDB 4.0.x problem]
V. PROGRAMMING LANGUAGE BINDINGS (PYTHON, PERL, RUBY, JAVA)
========================================================
For Python, Perl and Ruby bindings, see the file
./subversion/bindings/swig/INSTALL
For Java bindings, see the file
./subversion/bindings/javahl/README
( run in 0.830 second using v1.01-cache-2.11-cpan-0d23b851a93 )