cd /usr/ports/devel/subversion
Make backup of Makefile.
Edit Makefile and add following line. (after SVNFSTYPE?= fsfs OR before any APXS appeared on file)
APXS= /www/apache/bin/apxs
Now make with following options.
make -DWITH_MOD_DAV_SVN -DWITH_NEON -DWITH_BDB
#LoadModule dav_module
# /usr/local/libexec/apache2/mod_dav.so (Disable this line if you already installed the mod_dav)
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
Test it out the installation.\\
Now set according to following live example.
svn information
URL : http://xyz.k2patel.com/repos
e.g. community project URL will be : http://xyz.k2patel.com/repos/projects/community
Username : paryt
Password : asdua79
repository access file location : /srv/www/svn/svn-access.conf
username defination file path : /srv/www/svn/.svnaccess
access INFO : svn co --username svnrepo http://xyz.k2patel.com/repos
svn-access.conf
^^^^^^^^^^^^^^^
[/] // for root information
svnrepo = rw
[community:/branches/calc/bug-142]
user1 = rw
user2 = r
LoadModule dav_module /usr/local/libexec/apache/mod_dav.so
LoadModule dav_svn_module /usr/www/apache/modules/mod_dav_svn.so
LoadModule authz_svn_module /usr/www/apache/modules/mod_authz_svn.so
ServerName svn.k2patel.net
DocumentRoot /www/virtual/username/svnrepos
CustomLog /www/stats/svn.k2patel.net-stats.log light
CustomLog /www/logs/svn.k2patel.net-access.log full
ServerAdmin webmaster@backend.k2patel.net
/www/vapache/username/conf
DAV svn
SVNPath /www/virtual/username/svnrepos/
AuthzSVNAccessFile /www/virtual/username/svnrepos/svn_access.conf
AuthType Basic
AuthName "Subversion repository"
AuthUserFile /www/virtual/username/svnrepos/.svnaccess
Require valid-user
Trac Install
Initialize trac using command
trac-admin /www/virtual/username/trac.k2patel.net initenv
LoadModule python_module /www/apache/modules/mod_python.so
AddHandler mod_python .py
DocumentRoot /srv/www/svn/svnrepos/projects
ServerName xyz.k2patel.com
SetHandler mod_python
PythonInterpreter main_interpreter
PythonDebug On
PythonHandler trac.web.modpython_frontend
PythonOption TracEnv /srv/www/svn/pqr.k2patel.com
PythonOption TracUriRoot /
AuthType Basic
AuthName "MyCompany Trac Server"
AuthUserFile /srv/www/svn/.svnaccess
Require valid-user
Stand Alone Server (svn://)
/etc/rc.conf (FreeBSD specific)
------------
svnserve_enable="YES"
svnserve_flags="-d -r /srv/www/svn/pqr.k2patel.com/svn --listen-host=0.0.0.0"
svnserve_data="/srv/www/svn/pqr.k2patel.com/svn"
svnserve_user="username"
/conf/svnserve.conf
-----------------------------
password-db = passwd
/conf/passwd
----------------------
edit password file and add username = password.
URI - svn+ssh://{SSHUSERNAME}@{SERVER_NAME}/{REPO_DIR}
e.g. svn co svn+ssh://username@xyz.k2patel.com/srv/www/svn
Wrapper script for svnserve
First of all, rename the original svnserve command into svnserve.bin
(it usually resides in /usr/bin/svnserve)
Paste the following text into your favorite Linux editor and change
the /path/to/repository/root to something useful, eg.:
/usr/share/subversion/repositories
Save the file as "svnserve", being the root superuser.
#!/bin/sh
# wrap in order to put root in by default
# Script implemented by Adrian Robert
exec /usr/local/bin/svnserve.bin -r /path/to/repository/root "$@"