Setup svn over HTTP server

From Notes_Wiki

Home > CentOS > CentOS 6.x > Versioning tools > Subversion (SVN) > Setup svn over HTTP server

To setup SVN over HTTP (apache) server use:

  1. Install subversion and mod_dav_svn packages using 'yum -y install subversion mod_dav_svn'
  2. Create svn repository in some folder using 'svnadmin create <folder_name>'
  3. Ensure apache user has write permissions on given folder using either 'chown -R apache:apache <folder_name>' or with 'chmod -R 777 <folder_name>'
  4. Edit '/etc/httpd/conf/httpd.conf' and add following lines for appropriate virtual-host:
    <Location /<repository_name>>
    DAV svn
    SVNPath <PATH_of_repository_folder>
    </Location>
  5. Checkout working copy of repository using:
    svn co http://<server_ip_or_name>/<repository_name>
  6. Try commit and update using 'svn commit' or 'svn update' commands.


Note that above setup of repository should be secured. It can be done by restricting access to web server through firewall or by enablng LDAP authentication as explained at Configuring LDAP based authentication for apache


Supplying username and disabling caching of password

To supply username to SVN during checkout from http:// repository use:

svn co --username=<username> <URL>

To disable caching of passwords, especially unencrypted, edit file '~/.subversion/servers' and add following lines in [global] section at end:

store-passwords = no
store-plaintext-passwords = no



Home > CentOS > CentOS 6.x > Versioning tools > Subversion (SVN) > Setup svn over HTTP server