Install Apache Subversion on Ubuntu 20.04 LTS - Step by step guide ?

Apache Subversion is an open-source version control system. It helps you keep track of a collection of files and folders. Any time you change, add or delete a file or folder that you manage with Subversion, you commit these changes to your Subversion repository, which creates a new revision in your repository reflecting these changes. You can always go back, look at and get the contents of previous revisions. SVN supports several protocols for network access: SVN, SVN+SSH, HTTP, HTTPS. If you are behind a firewall, HTTP-based Subversion is advantageous since SVN traffic will go through the firewall without any additional firewall rule set.

Here at LinuxAPT, as part of our Server Management Services, we regularly help our Customers to perform related Open-source Software Installation queries.

In this context, we shall look into how to install Apache Subversion on Ubuntu 20.04 LTS.


Steps to Install and configure Apache Subversion on Ubuntu 20.04 LTS Focal Fossa

1.  Perform System Update

First, make sure that all your system packages are up-to-date by running the following apt commands in the terminal:

$ sudo apt update
$ sudo apt upgrade


2. Install Apache webserver

Before starting, the Apache webserver must be installed on your server. If not installed, you can install it with the following command:

$ sudo apt install apache2 apache2-utils


3. Install Apache Subversion on the system

Run the following command to install SVN and all dependencies needed for SVN:

$ sudo apt install subversion libapache2-mod-svn subversion-tools libsvn-dev

Once the package is installed, Now enable Apache2 modules to run SVN to function:

$ sudo a2enmod dav
$ sudo a2enmod dav_svn
$ sudo systemctl start apache2.service


4. Configure Apache Subversion

Subversion Apache module package creates a configuration file /etc/apache2/mods-enabled/dav_svn.conf. You just need to make the necessary changes to it.


5. Create First SVN Repository

Create your first svn repository named first repo, You can use any suitable name:

$ sudo mkdir /var/www/svn
$ sudo svnadmin create /var/www/svn/project
$ sudo chown -R www-data:www-data /var/www/svn
$ sudo chmod -R 775 /var/www/svn


6. Create an account and password for SVN

The Following commands will add users for svn. It will prompt for user's passwords to be assigned:

$ sudo htpasswd -cm /etc/apache2/dav_svn.passwd linuxapt
$ sudo htpasswd -m /etc/apache2/dav_svn.passwd linuxapt1

Next, restart the Apache2 server with the below command to effect changes:

$ sudo systemctl restart apache2.service


How to access Repository in Browser ?

Subversion will be available on HTTP port 80 by default. 

Open your favorite browser and navigate to http://your-domain.com/svn/project/ or http://your-server-ip/svn/project/ and will prompt for authentication. 

Use login credentials created in Step 6

If you are using a firewall, please open port 80 to enable access to the control panel.


[Need assistance in fixing missing Software packages on your Linux system ? We can fix it. ]

This article covers the process of installing Subversion on Ubuntu 20.04 LTS Focal Fossa system. In fact, Apache Subversion, often abbreviated to SVN, is a version control system, distributed as open-source software.

Related Posts