Apache Subversion è un sistema di controllo della versione open source che memorizza le versioni precedenti e le modifiche ai file e alle directory. Ciò ti consentirà di recuperare le versioni precedenti dei file quando ne avrai bisogno. Puoi anche tenere traccia del repository e identificare chi ha apportato modifiche specifiche.
Subversion è molto simile a Git con la differenza fondamentale che Git è un sistema di controllo della versione distribuito mentre SVN è un sistema di controllo della versione centralizzato. Subversion ha un unico repository centrale che semplifica il mantenimento di un approccio di controllo dall'alto verso il basso.
In questo tutorial, ti mostreremo come installare e configurare Apache Subversion su Ubuntu 18.04.
Prerequisiti
- Un nuovo VPS Ubuntu 18.04 sulla piattaforma Atlantic.Net Cloud.
- Un nome di dominio valido puntato al tuo indirizzo IP.
- Un indirizzo IP statico configurato sul tuo server.
Fase 1:crea un server cloud Atlantic.Net
Per prima cosa, accedi al tuo server Atlantic.Net Cloud. Crea un nuovo server, scegliendo Ubuntu 18.04 come sistema operativo con almeno 2GB di RAM. Collegati al tuo Cloud Server tramite SSH e accedi utilizzando le credenziali evidenziate in alto nella pagina.
Dopo aver effettuato l'accesso al tuo server Ubuntu 18.04, esegui il comando seguente per aggiornare il tuo sistema di base con gli ultimi pacchetti disponibili.
apt-get update -y
Fase 2 – Installa Apache Subversion
Prima di iniziare, il server web Apache deve essere installato sul tuo server. Se non è installato, puoi installarlo con il seguente comando:
apt-get install apache2 apache2-utils -y
Una volta completata l'installazione, puoi installare Subversion con il seguente comando:
apt-get install subversion libapache2-mod-svn -y
Dopo aver installato Apache Subversion, dovrai abilitare alcuni moduli SVN. Puoi abilitarli con il seguente comando:
a2enmod dav a2enmod dav_svn a2enmod authz_svn
Una volta abilitati tutti i moduli, riavvia il servizio Apache per implementare le modifiche:
systemctl restart apache2
A questo punto, Apache Subversion è installato. Ora puoi procedere con la creazione del tuo primo repository.
Fase 3:crea il repository Subversion
In questa sezione creeremo il repository Subversion e creeremo un utente per accedere a questo repository.
Innanzitutto, crea una directory per Subversion:
mkdir /svn
Quindi, crea un repository chiamato atlanticrepo all'interno della directory /svn:
svnadmin create /svn/atlanticrepo
Una volta creato il repository, cambia la proprietà del repository in www-data:
chown -R www-data:www-data /svn/atlanticrepo chmod -R 775 /svn/atlanticrepo
Quindi, crea un nuovo utente Subversion con il seguente comando:
htpasswd -cm /etc/svn-user atlantic
Fornisci la password desiderata, come mostrato di seguito:
New password: Re-type new password: Adding password for user atlantic
Fase 4 – Configura Apache per Subversion
Successivamente, dovrai creare un file host virtuale Apache per accedere a Subversion Apache tramite un browser web.
Puoi crearlo con il seguente comando:
nano /etc/apache2/sites-available/svn.conf
Aggiungi le seguenti righe:
<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>
Salva e chiudi il file quando hai finito. Quindi, riavvia il servizio Apache per implementare le modifiche:
systemctl restart apache2
Fase 5:accedi a Subversion di Apache
Ora apri il tuo browser web e digita l'URL http://svn.example.com/svn/atlanticrepo . Dovresti vedere la seguente pagina:
Ora, fornisci il tuo nome utente, password e fai clic su OK b utton. Dovresti vedere il tuo repository creato nella schermata seguente:
Fase 6:prova la sovversione
In questa sezione installeremo il client Subversion nel sistema remoto, controlleremo il repository dal server Subversion, creeremo alcuni file e directory e li aggiungeremo al repository Subversion.
Vai al sistema remoto e installa Subversion con il seguente comando:
apt-get install subversion -y
Una volta installato, crea una directory per il repository locale con il seguente comando:
mkdir atlantic
Quindi, controlla il repository atlanticrepo dal server Subversion al repository locale con il seguente comando:
svn checkout http://svn.example.com/svn/atlanticrepo --username atlantic atlantic/
Ti verrà chiesto di fornire una password per l'utente "atlantic" come mostrato di seguito:
Authentication realm: <http://svn.example.com:80> Subversion Repository Password for 'atlantic': ***** Checked out revision 0.
Quindi, cambia la directory nel repository atlantico e crea alcuni file e directory:
cd atlantic touch file1.txt file2.txt mkdir dir1 dir2
Quindi, aggiungi tutti i file e le directory al repository Subversion con il seguente comando:
svn add file1.txt file2.txt dir1 dir2
Dovresti vedere il seguente output:
A file1.txt A file2.txt A dir1 A dir2
Quindi, salva le modifiche nel repository con il seguente comando:
svn commit -m 'This is my first commit on Atlantic SVN server'
Dovresti vedere il seguente output:
Adding dir1 Adding dir2 Adding file1.txt Adding file2.txt Transmitting file data .. Committed revision 1.
Ora apri il tuo browser web e accedi al tuo repository utilizzando l'URL http://svn.example.com/svn/atlanticrepo . Dovresti vedere i file e le directory appena aggiunti nella schermata seguente:
Conclusione
Congratulazioni! Hai installato e configurato correttamente un server Apache Subversion su Ubuntu 18.04. Ora puoi tenere traccia di tutti i tuoi file e cartelle e recuperare qualsiasi versione dei tuoi file ogni volta che ne hai bisogno. Prova oggi Apache Subversion su un server privato virtuale Atlantic.Net.