Hvordan installere SVN på RHEL-baserte Linux-distribusjoner
Skrevet i programmeringsspråket C, Apache Subversion, i daglig tale forkortet til SVN, er et gratis og åpen kildekode versjonskontrollsystem som holder styr på historisk versjoner av filer og kataloger.
Enkelt sagt er SVN ganske enkelt en versjonsporing som lar brukere sende endringer som er gjort i filer til et arkiv som sporer hvem som har gjort endringene i hver fil. Depotet ligner på en filserver. Forskjellen er at den sporer endringer og lar deg gjenopprette eldre versjoner av kode eller undersøke historien til filendringene.
I denne artikkelen fokuserer vi på hvordan du installerer SVN på RHEL-baserte Linux-distribusjoner som CentOS, Fedora, Rocky Linux, og AlmaLinux.
Trinn 1: Installer Apache Subversion (SVN) i Linux
Vi begynner med først å installere Subversion og tilhørende pakker som vist.
sudo dnf install mod_dav_svn subversion
Kommandoen installerer også Apache HTTP-nettserveren, hvis den ikke ble installert tidligere. Du kan starte Apache og sjekke statusen som følger.
sudo systemctl start httpd
sudo systemctl status httpd
Trinn 2: Opprett og konfigurer et lokalt SVN-lager
Når SVN er installert, vil neste trinn være å lage et depot for lagring av filer og kode.
Først oppretter du SVN-katalogen der du vil lagre koden.
sudo mkdir -p /var/www/svn
Deretter navigerer du inn i katalogen og oppretter et depot ved å bruke kommandoen svadmin create:
cd /var/www/svn/
sudo svadmin create demo_repo
Deretter tildeler du tillatelser til SVN-katalogen.
sudo chown -R apache.apache /var/www/svn
Trinn 3: Opprett en Subversion-konfigurasjonsfil
Vi må opprette en konfigurasjonsfil for Subversion.
sudo vim /etc/httpd/conf.d/subversion.conf
Legg til følgende linjer.
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
<Location /svn>
DAV svn
SVNParentPath /var/www/svn
# Limit write permission to list of valid users.
<LimitExcept GET PROPFIND OPTIONS REPORT>
# Require SSL connection for password protection.
# SSLRequireSSL
AuthType Basic
AuthName "Subversion repo"
AuthUserFile /etc/svn-auth-users
Require valid-user
</LimitExcept>
</Location>
Lagre endringene og avslutt.
Trinn 4: Opprett autoriserte Subversion-brukere
Det neste trinnet er å opprette Subversion-brukere, dvs. brukere som vil få tilgang til Subversion-depotet. For å opprette den første brukeren, bruk htpasswd-kommandoen med -cm
-alternativet. Passordene lagres i filen /etc/svn-auth-users.
sudo htpasswd -cm /etc/svn-auth-users svnuser1
For å opprette etterfølgende brukere, slipp -c
-alternativet og bruk kun -m
-alternativet.
sudo htpasswd -m /etc/svn-auth-users svnuser2
sudo htpasswd -m /etc/svn-auth-users svnuser3
For å bruke endringene som er gjort, start Apache-nettserveren på nytt.
sudo systemctl restart httpd
Trinn 5: Konfigurer brannmur og SELinux for SVN
Konfigurer brannmuren for å tillate HTTP-trafikk på brannmuren som følger:
sudo firewall-cmd --add-service=http --permanent
sudo firewall-cmd --reload
Bruk i tillegg følgende SELinux-regler på depotet.
sudo chcon -R -t httpd_sys_content_t /var/www/svn/demo_repo
sudo chcon -R -t httpd_sys_rw_content_t /var/www/svn/demo_repo
Trinn 6: Få tilgang til SVN fra en nettleser
For å få tilgang til SVN-depotet ditt fra en nettleser, gå ganske enkelt til URL-en.
http://server-ip/svn/demo_repo
Bruker SVN Repository
For å begynne å bruke SVN-depotet, må du lage en arbeidskopi av SVN-depotet på din nåværende arbeidskatalog ved å bruke svn checkout-kommandoen.
svn checkout URL
For å legge til noen filer, naviger til den klonede katalogen:
cd demo_repo
Lag noen demofiler:
touch file1.txt file2.txt file3.txt
Legg filene til SVN.
svn add file1.txt file2.txt file3.txt
Send deretter filene til depotet som følger:
svn commit -m "Adding new files" file1.txt file2.txt file3.txt
Autentiser med legitimasjonen din, og filene vil bli lagt til depotet.
Du kan bekrefte dette ved å gå tilbake til nettleseren.
Og dette avslutter vår veiledning om hvordan du installerer SVN på RHEL, CentOS, Fedora, Rocky Linux, og AlmaLinux.