In this tutorial, we will show you how to install Apache Subversion on Ubuntu 20.04 LTS. For those of you who didn’t know, 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 ruleset.
This article assumes you have at least basic knowledge of Linux, know how to use the shell, and most importantly, you host your site on your own VPS. The installation is quite simple and assumes you are running in the root account, if not you may need to add ‘
sudo‘ to the commands to get root privileges. I will show you through the step-by-step installation Subversion on Ubuntu 20.04 LTS (Focal Fossa). You can follow the same instructions for Ubuntu 18.04, 16.04, and any other Debian-based distribution like Linux Mint.
Install Apache Subversion on Ubuntu 20.04 LTS Focal Fossa
Step 1. 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
Step 2. Installing 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
Step 3. Installing Apache Subversion on Ubuntu 20.04.
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
Step 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.
Step 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
Step 6. Create an account and password for SVN.
Following commands will add users for svn. It will prompt for users’ passwords to be assigned.
sudo htpasswd -cm /etc/apache2/dav_svn.passwd idroot sudo htpasswd -m /etc/apache2/dav_svn.passwd meilana
Next, restart the Apache2 server with the below command:
sudo systemctl restart apache2.service
Step 7. Accessing Repository in Browser.
Subversion will be available on HTTP port 80 by default. Open your favorite browser and navigate to
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.
Congratulations! You have successfully installed Apache SVN. Thanks for using this tutorial for installing Subversion on Ubuntu 20.04 LTS Focal Fossa system. For additional help or useful information, we recommend you check the official Apache Subversion website.