Apache Subversion es un sistema de control de versiones de código abierto que almacena versiones anteriores y cambios en sus archivos y directorios. Esto le permitirá recuperar sus versiones anteriores de archivos cuando lo necesite. También puede realizar un seguimiento del repositorio e identificar quién realizó cambios específicos.
Subversion es muy similar a Git con la diferencia clave de que Git es un sistema de control de versiones distribuido, mientras que SVN es un sistema de control de versiones centralizado. Subversion tiene un repositorio central único que le facilita mantener un enfoque de control de arriba hacia abajo.
En este tutorial, le mostraremos cómo instalar y configurar Apache Subversion en Ubuntu 18.04.
Requisitos
- Un Ubuntu 18.04 VPS nuevo en Atlantic.Net Cloud Platform.
- Un nombre de dominio válido dirigido a su dirección IP.
- Una dirección IP estática configurada en su servidor.
Paso 1:crear el servidor en la nube de Atlantic.Net
Primero, inicie sesión en su servidor en la nube de Atlantic.Net. Cree un nuevo servidor, eligiendo Ubuntu 18.04 como sistema operativo con al menos 2 GB de RAM. Conéctese a su servidor en la nube a través de SSH e inicie sesión con las credenciales resaltadas en la parte superior de la página.
Una vez que haya iniciado sesión en su servidor Ubuntu 18.04, ejecute el siguiente comando para actualizar su sistema base con los últimos paquetes disponibles.
apt-get update -y
Paso 2:instalar Apache Subversion
Antes de comenzar, el servidor web Apache debe estar instalado en su servidor. Si no está instalado, puede instalarlo con el siguiente comando:
apt-get install apache2 apache2-utils -y
Una vez que se haya completado la instalación, puede instalar Subversion con el siguiente comando:
apt-get install subversion libapache2-mod-svn -y
Después de instalar Apache Subversion, deberá habilitar algunos módulos SVN. Puede habilitarlos con el siguiente comando:
a2enmod dav a2enmod dav_svn a2enmod authz_svn
Una vez que todos los módulos estén habilitados, reinicie el servicio Apache para implementar los cambios:
systemctl restart apache2
En este punto, Apache Subversion está instalado. Ahora puede proceder a crear su primer repositorio.
Paso 3:crear el repositorio de Subversion
En esta sección, crearemos el repositorio de Subversion y crearemos un usuario para acceder a este repositorio.
Primero, cree un directorio para Subversion:
mkdir /svn
A continuación, cree un repositorio llamado atlanticrepo dentro del directorio /svn:
svnadmin create /svn/atlanticrepo
Una vez que se crea el repositorio, cambie la propiedad del repositorio a www-data:
chown -R www-data:www-data /svn/atlanticrepo chmod -R 775 /svn/atlanticrepo
A continuación, cree un nuevo usuario de Subversion con el siguiente comando:
htpasswd -cm /etc/svn-user atlantic
Proporcione su contraseña deseada, como se muestra a continuación:
New password: Re-type new password: Adding password for user atlantic
Paso 4:configurar Apache para Subversion
A continuación, deberá crear un archivo de host virtual de Apache para acceder a Apache Subversion a través de un navegador web.
Puedes crearlo con el siguiente comando:
nano /etc/apache2/sites-available/svn.conf
Agregue las siguientes líneas:
<VirtualHost *:80> ServerName svn.example.com <Location /svn> DAV svn SVNParentPath /svn AuthType Basic AuthName "Subversion Repository" AuthUserFile /etc/svn-user Require valid-user </Location> ErrorLog ${APACHE_LOG_DIR}/svn-error.log CustomLog ${APACHE_LOG_DIR}/svn-access.log combined </VirtualHost>
Guarde y cierre el archivo cuando haya terminado. Luego, reinicie el servicio Apache para implementar los cambios:
systemctl restart apache2
Paso 5:acceda a Apache Subversion
Ahora, abra su navegador web y escriba la URL http://svn.example.com/svn/atlanticrepo . Debería ver la siguiente página:
Ahora, proporcione su nombre de usuario, contraseña y haga clic en OK b botón Debería ver su repositorio creado en la siguiente pantalla:
Paso 6:probar Subversion
En esta sección, instalaremos el cliente de Subversion en el sistema remoto, revisaremos el repositorio desde el servidor de Subversion, crearemos algunos archivos y directorios y los agregaremos al repositorio de Subversion.
Vaya al sistema remoto e instale Subversion con el siguiente comando:
apt-get install subversion -y
Una vez instalado, cree un directorio para el repositorio local con el siguiente comando:
mkdir atlantic
A continuación, consulte el repositorio atlanticrepo desde el servidor de Subversion al repositorio local con el siguiente comando:
svn checkout http://svn.example.com/svn/atlanticrepo --username atlantic atlantic/
Se le pedirá que proporcione una contraseña para el usuario "atlántico" como se muestra a continuación:
Authentication realm: <http://svn.example.com:80> Subversion Repository Password for 'atlantic': ***** Checked out revision 0.
A continuación, cambie el directorio al repositorio atlántico y cree algunos archivos y directorios:
cd atlantic touch file1.txt file2.txt mkdir dir1 dir2
A continuación, agregue todos los archivos y directorios al repositorio de Subversion con el siguiente comando:
svn add file1.txt file2.txt dir1 dir2
Debería ver el siguiente resultado:
A file1.txt A file2.txt A dir1 A dir2
A continuación, confirme los cambios en el repositorio con el siguiente comando:
svn commit -m 'This is my first commit on Atlantic SVN server'
Debería ver el siguiente resultado:
Adding dir1 Adding dir2 Adding file1.txt Adding file2.txt Transmitting file data .. Committed revision 1.
Ahora, abra su navegador web y acceda a su repositorio usando la URL http://svn.example.com/svn/atlanticrepo . Debería ver los archivos y directorios recién agregados en la siguiente pantalla:
Conclusión
¡Felicidades! Ha instalado y configurado con éxito un servidor Apache Subversion en Ubuntu 18.04. Ahora puede realizar un seguimiento de todos sus archivos y carpetas y recuperar cualquier versión de sus archivos cuando lo necesite. Pruebe Apache Subversion hoy en un servidor privado virtual de Atlantic.Net.