User Tools

Site Tools


subversion
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                         
| Httpd.conf
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
 
 
 
<VirtualHost 209.200.38.7:80>
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                                      
<Location /repos>                                            
  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                                                  
</Location>                                                           
</VirtualHost>

Trac Install

Initialize trac using command

trac-admin /www/virtual/username/trac.k2patel.net initenv
| httpd.conf
LoadModule python_module /www/apache/modules/mod_python.so
AddHandler mod_python .py                                 
 
<VirtualHost xx.yy.zz.ee:80 >
    DocumentRoot /srv/www/svn/svnrepos/projects
    ServerName xyz.k2patel.com
    <Location />                                           
        SetHandler mod_python                              
        PythonInterpreter main_interpreter                 
        PythonDebug On                                     
        PythonHandler trac.web.modpython_frontend          
        PythonOption TracEnv /srv/www/svn/pqr.k2patel.com
        PythonOption TracUriRoot /
    </Location>
    <Location /login>
        AuthType Basic
        AuthName "MyCompany Trac Server"
        AuthUserFile /srv/www/svn/.svnaccess              
        Require valid-user                                                     
    </Location>                                                                
</VirtualHost>
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"                                                                       
 
 
<Repo_dir>/conf/svnserve.conf
-----------------------------
password-db = passwd         
 
<Repo_dir>/conf/passwd
----------------------
edit password file and add username = password.
| SVN Access with SSH wrapper
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.
| svnserve
#!/bin/sh
# wrap in order to put root in by default
# Script implemented by Adrian Robert <arobert@cogsci.ucsd.edu>
 
exec /usr/local/bin/svnserve.bin -r /path/to/repository/root "$@"
subversion.txt · Last modified: 2020/08/10 02:35 (external edit)