Kif Tinstalla SVN fuq Distribuzzjonijiet Linux Ibbażati fuq RHEL
Miktub fil-lingwa ta' programmar C, Apache Subversion, imqassar b'mod kolokwali bħala SVN, hija sistema ta' kontroll ta' verżjonijiet b'xejn u open-source li żżomm kont tal-verżjonijiet storiċi ta' fajls u direttorji.
Fi kliem sempliċi, SVN huwa sempliċiment tracker tal-verżjoni li jippermetti lill-utenti jibagħtu bidliet li saru lill-fajls lil repożitorju li jsegwi min għamel il-bidliet f'kull fajl. Ir-repożitorju huwa simili għal server tal-fajls. Id-differenza hija li ssegwi l-bidliet u tippermettilek tirkupra verżjonijiet eqdem tal-kodiċi jew tinvestiga l-istorja tal-bidliet tal-fajl.
F'dan l-artikolu, aħna niffukaw fuq kif tinstalla SVN fuq distribuzzjonijiet Linux Ibbażati fuq RHEL bħal CentOS, Fedora, Rocky Linux, u AlmaLinux.
Pass 1: Installa Apache Subversion (SVN) fil-Linux
Nibdew billi l-ewwel ninstallaw Subversion u l-pakketti assoċjati tiegħu kif muri.
$ sudo dnf install mod_dav_svn subversion
Il-kmand jinstalla wkoll is-server tal-web Apache HTTP, jekk ma kienx installat qabel. Tista 'tibda Apache u tiċċekkja l-istatus tiegħu kif ġej.
$ sudo systemctl start httpd $ sudo systemctl status httpd
Pass 2: Oħloq u Ikkonfigura Repożitorju SVN Lokali
Ladarba SVN jiġi installat, il-pass li jmiss ikun li jinħoloq repożitorju għall-ħażna ta 'fajls u kodiċi.
L-ewwel, oħloq id-direttorju SVN li fih ser taħżen il-kodiċi.
$ sudo mkdir -p /var/www/svn
Sussegwentement, innaviga fid-direttorju u oħloq repożitorju billi tuża l-kmand svadmin create:
$ cd /var/www/svn/ $ sudo svadmin create demo_repo
Sussegwentement, tassenja l-permessi lid-direttorju SVN.
$ sudo chown -R apache.apache /var/www/svn
Pass 3: Oħloq Fajl ta' Konfigurazzjoni ta' Subversion
Għandna bżonn noħolqu fajl ta 'konfigurazzjoni ta' Subversion.
$ sudo vim /etc/httpd/conf.d/subversion.conf
Żid il-linji li ġejjin.
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>
Issejvja l-bidliet u ħruġ.
Pass 4: Oħloq Utenti Awtorizzati tas-Subversion
Il-pass li jmiss huwa li jinħolqu utenti tas-Subversion jiġifieri utenti li se jkunu awtorizzati jaċċessaw ir-repożitorju tas-Subversion. Biex toħloq l-ewwel utent, uża l-kmand htpasswd bl-għażla -cm
. Il-passwords jiġu ssejvjati fil-fajl /etc/svn-auth-users.
$ sudo htpasswd -cm /etc/svn-auth-users svnuser1
Biex toħloq utenti sussegwenti, ħalli barra l-għażla -c
u uża biss l-għażla -m
.
$ sudo htpasswd -m /etc/svn-auth-users svnuser2 $ sudo htpasswd -m /etc/svn-auth-users svnuser3
Biex tapplika l-bidliet li saru, ibda mill-ġdid il-webserver Apache.
$ sudo systemctl restart httpd
Pass 5: Ikkonfigura Firewall u SELinux għal SVN
Ikkonfigura l-firewall biex tippermetti traffiku HTTP fuq il-firewall kif ġej:
$ sudo firewall-cmd --add-service=http --permanent $ sudo firewall-cmd --reload
Barra minn hekk, applika r-regoli SELinux li ġejjin fuq ir-repożitorju.
$ 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
Pass 6: Aċċess għal SVN minn Browser
Biex taċċessa r-repożitorju SVN tiegħek minn browser, sempliċement mur fil-URL.
http://server-ip/svn/demo_repo
Biex tibda tuża r-repożitorju SVN, trid toħloq kopja ta' ħidma tar-repożitorju SVN fid-direttorju tax-xogħol attwali tiegħek billi tuża l-kmand ta' checkout svn.
$ svn checkout URL
Biex iżżid xi fajls, innaviga fid-direttorju kklonat:
$ cd demo_repo
Oħloq xi fajls demo:
$ touch file1.txt file2.txt file3.txt
Żid il-fajls ma SVN.
$ svn add file1.txt file2.txt file3.txt
Imbagħad ikkommetti l-fajls fir-repożitorju kif ġej:
$ svn commit -m "Adding new files" file1.txt file2.txt file3.txt
Awtentika bil-kredenzjali tiegħek u l-fajls jiġu miżjuda mar-repożitorju.
Tista' tikkonferma dan billi tmur lura għall-browser.
U dan jikkonkludi l-gwida tagħna dwar kif tinstalla SVN fuq RHEL, CentOS, Fedora, Rocky Linux, u AlmaLinux.