Subversion 1.7 comes with many new features and improvements over earlier versions. A key feature introduced in Subversion 1.7 is the centralization of the working copy metadata storage into a single location. Instead of a .svn directory in every directory in the working copy, Subversion 1.7 working copies have just one .svn directory in the root.
If you are working with Ubuntu 12.04, the default Subversion package contains Subversion 1.6. Fortunately Dominik Stadler has published a Subversion 1.7 package for Ubuntu 12.04 (precise).
Following are the instructions to install Subversion 1.7 on Ubuntu 12.04 (precise).
First install some required dependencies:
sudo apt-get install python-software-properties
Install Subversion 1.7
Install Subversion 1.7 from Dominik Stadler PPA.
sudo apt-add-repository ppa:dominik-stadler/subversion-1.7
sudo apt-get update
sudo apt-get install subversion
Fix the SSL handshake error
The libneon27 library, that Subversion 1.7 uses, needs to be updated, otherwise you will receive the following error when accessing a server via https:
SSL handshake failed: SSL error: Key usage violation in certificate has been detected
Following are the instructions to install the updated libneon27 library on Ubuntu 12.04 (precise).
Remove the libneon27 library from your system (if it is installed):
sudo apt-get remove libneon27
Install libssl 0.9.8:
sudo apt-get install libssl0.9.8
Download and install an updated version of the libneon27 library (0.29.3-3).
If you are running Ubuntu 64 bits:
sudo dpkg -i libneon27_0.29.3-3_amd64.deb
If you are running Ubuntu 32 bits:
sudo dpkg -i libneon27_0.29.3-3_i386.deb
Now we will create a bash alias to preload the right libneon version when invoking the svn command. Edit your .bashrc file:
Add the following alias at the end of the file:
alias svn='LD_PRELOAD=/usr/lib/libneon.so.27 svn'
Save the .bashrc file and finally reload the .bashrc file:
Now you can test and use Subversion 1.7.