Wéi installéiere ech SVN op RHEL-baséiert Linux Distributiounen
Geschriwwen an C Programméiersprooch, Apache Subversion, allgemeng als SVN verkierzt, ass e gratis an Open Source Versiounskontrollsystem deen historesch Versioune vu Dateien an Verzeichnisser verfollegt.
Einfach gesot, SVN ass einfach e Versioun Tracker deen d'Benotzer erlaabt Ännerungen op Dateien an e Repository ze schécken deen verfollegt wien d'Ännerungen an all Datei gemaach hunn. De Repository ass ähnlech wéi e Dateiserver. Den Ënnerscheed ass datt et Ännerungen verfollegt an Iech erlaabt eeler Versioune vum Code ze recuperéieren oder d'Geschicht vun de Dateiännerungen z'ënnersichen.
An dësem Artikel konzentréiere mir eis op wéi Dir SVN op RHEL-baséiert Linux Verdeelunge wéi CentOS, Fedora, Rocky Linux, an AlmaLinux installéiere wëllt.
Schrëtt 1: Installéiert Apache Subversion (SVN) op Linux
Mir fänken un mat der éischter Installatioun vun Subversion a seng assoziéiert Packagen wéi gewisen.
$ sudo dnf install mod_dav_svn subversion
De Kommando installéiert och Apache HTTP Webserver, wann et net virdru installéiert gouf. Dir kënnt Apache starten a säi Status kontrolléieren wéi follegt.
$ sudo systemctl start httpd $ sudo systemctl status httpd
Schrëtt 2: Erstellt a konfiguréiert e Lokal SVN Repository
Wann SVN installéiert ass, ass de nächste Schrëtt fir e Repository ze kreéieren fir Dateien a Code ze späicheren.
Als éischt erstellt de SVN Verzeichnis an deem Dir de Code späichert.
$ sudo mkdir -p /var/www/svn
Als nächst, navigéiert an de Verzeichnis an erstellt e Repository mam svadmin create Kommando:
$ cd /var/www/svn/ $ sudo svadmin create demo_repo
Als nächst gitt Permissiounen un de SVN Verzeichnis.
$ sudo chown -R apache.apache /var/www/svn
Schrëtt 3: Erstellt eng Subversion Konfiguratiounsdatei
Mir mussen eng Subversion Konfiguratiounsdatei erstellen.
$ sudo vim /etc/httpd/conf.d/subversion.conf
Füügt déi folgend Zeilen derbäi.
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>
Späichert d'Ännerungen a gitt eraus.
Schrëtt 4: Erstellt autoriséiert Subversion Benotzer
De nächste Schrëtt ass d'Subversion Benotzer ze kreéieren, dh Benotzer déi autoriséiert sinn fir Zougang zum Subversion Repository ze kréien. Fir den éischte Benotzer ze kreéieren, benotzt de Kommando htpasswd mat der Optioun -cm
. D'Passwierder ginn an der Datei /etc/svn-auth-users gespäichert.
$ sudo htpasswd -cm /etc/svn-auth-users svnuser1
Fir spéider Benotzer ze kreéieren, loosst d'Optioun -c
a benotzt nëmmen d'Optioun -m
.
$ sudo htpasswd -m /etc/svn-auth-users svnuser2 $ sudo htpasswd -m /etc/svn-auth-users svnuser3
Fir d'Ännerungen ëmzesetzen, start den Apache Webserver nei.
$ sudo systemctl restart httpd
Schrëtt 5: Firewall a SELinux fir SVN konfiguréieren
Konfiguréiert d'Firewall fir HTTP-Traffic op der Firewall z'erméiglechen wéi follegt:
$ sudo firewall-cmd --add-service=http --permanent $ sudo firewall-cmd --reload
Zousätzlech, gëllen déi folgend SELinux Regelen op de Repository.
$ 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
Schrëtt 6: Zougang zu SVN aus engem Browser
Fir Zougang zu Ärem SVN Repository vun engem Browser ze kréien, gitt einfach op d'URL.
http://server-ip/svn/demo_repo
Fir de SVN-Repository ze benotzen, musst Dir eng Aarbechtskopie vum SVN-Repository op Ärem aktuellen Aarbechtsverzeechnes erstellen mat dem svn Checkout Kommando.
$ svn checkout URL
Fir e puer Dateien ze addéieren, navigéiert an de gekloonten Verzeichnis:
$ cd demo_repo
Erstellt e puer Demo Dateien:
$ touch file1.txt file2.txt file3.txt
Füügt d'Dateien op SVN.
$ svn add file1.txt file2.txt file3.txt
Dann engagéieren d'Dateien an de Repository wéi follegt:
$ svn commit -m "Adding new files" file1.txt file2.txt file3.txt
Authentifizéieren mat Äre Umeldungsinformatiounen an d'Dateie ginn an de Repository bäigefüügt.
Dir kënnt dëst bestätegen andeems Dir zréck an de Browser gitt.
An dëst schléisst eise Guide of wéi Dir SVN op RHEL, CentOS, Fedora, Rocky Linux, an AlmaLinux installéiere wëllt.