Subversión , ampliamente conocido como SVN , es un sistema de control de versiones de código abierto que se utiliza para almacenar los cambios históricos de archivos y documentos de origen y los administra durante un período de tiempo.
Esta publicación lo ayuda a configurar SVN en Linux Mint 19 / Linux Mint 18 .
Instalar servidor web
Actualice el índice del repositorio.
sudo apt-get update
Aquí instalaremos servidor Apache como servidor web para el repositorio SVN.
sudo apt-get install -y apache2 apache2-utils
Verifique el servidor web Apache visitando
http://tu.dirección.ip.ress
Instalar Apache Subversion
Una vez que Apache esté instalado, emita el siguiente comando para instalar subversion.
sudo apt-get install -y subversion subversion-tools libapache2-mod-svn
Configurar subversión de Apache
Una vez finalizada la instalación, puede comenzar a crear repositorios según los requisitos. En mi caso, estoy creando /svn como base y creará el repositorio en ella.
sudo mkdir /svn
Crea el repositorio llamado “testrepo”.
sudo svnadmin create /svn/testrepo
Cambie el permiso del repositorio para que Apache pueda leer y escribir.
sudo chown -R www-data:www-data /svn/testrepo/
Configurar host virtual en Apache.
sudo nano /etc/apache2/mods-enabled/dav_svn.conf
Coloque el siguiente contenido.
<Location /svn> DAV svn SVNParentPath /svn AuthType Basic AuthName "Subversion Repository" AuthUserFile /etc/apache2/dav_svn.passwd Require valid-user </Location>
Cree un archivo de contraseña para el usuario. Reemplace raj con su nombre de usuario.
sudo htpasswd -cm /etc/apache2/dav_svn.passwd raj
Reinicie el servidor apache.
sudo service apache2 restart
Acceda al SVN usando el navegador, la URL será
http://tu.ip.add.ress/svn/testrepoSe le pedirá que ingrese el nombre de usuario y la contraseña.

Al iniciar sesión correctamente, los contenidos se enumerarán a continuación.

Consulte los archivos contenidos en el repositorio en el directorio de prueba, cree un directorio llamado svncheckout .
mkdir svncheckout svn checkout http://192.168.1.10/svn/testrepo --username raj svncheckout/
El resultado será como el siguiente.

Puede crear algunos archivos de prueba en el directorio de pago.
cd svncheckout/ touch checkout1.txt touch checkout2.txt
Agregue los archivos para confirmar.
svn add checkout1.txt checkout2.txt
Salida:
A checkout1.txt A checkout2.txt
Confirme los archivos agregados.
Puede mencionar el mensaje de confirmación con la opción -m.svn commit -m 'First Revision'
Salida:
Adding checkout1.txt Adding checkout2.txt Transmitting file data ..done Committing transaction... Committed revision 1.
Los archivos confirmados se pueden ver en el navegador.

Que todos. También puede usar SVN clientes como TortoiseSVN para Windows y RapidSVN para Linux.