Hvernig á að setja upp SVN á RHEL-undirstaða Linux dreifingar


Skrifað á C forritunarmáli, Apache Subversion, í daglegu tali skammstafað sem SVN, er ókeypis og opinn uppspretta útgáfustýringarkerfi sem heldur utan um sögulegar útgáfur af skrám og möppum.

Einfaldlega sagt, SVN er einfaldlega útgáfa rekja spor einhvers sem gerir notendum kleift að senda breytingar sem gerðar eru á skrám í geymslu sem fylgist með hver gerði breytingarnar í hverri skrá. Geymslan er svipuð og skráaþjónn. Munurinn er sá að það fylgist með breytingum og gerir þér kleift að endurheimta eldri útgáfur af kóða eða rannsaka sögu skráarbreytinganna.

Í þessari grein leggjum við áherslu á hvernig á að setja upp SVN á RHEL-undirstaða Linux dreifingar eins og CentOS, Fedora, Rocky Linux og AlmaLinux.

Skref 1: Settu upp Apache Subversion (SVN) í Linux

Við byrjum á því að setja upp Subversion og tengda pakka eins og sýnt er.

$ sudo dnf install mod_dav_svn subversion

Skipunin setur einnig upp Apache HTTP vefþjón, ef hann var ekki settur upp fyrr. Þú getur ræst Apache og athugað stöðu þess eins og hér segir.

$ sudo systemctl start httpd
$ sudo systemctl status httpd

Skref 2: Búðu til og stilltu staðbundna SVN geymslu

Þegar SVN hefur verið sett upp verður næsta skref að búa til geymslu til að geyma skrár og kóða.

Fyrst skaltu búa til SVN möppuna þar sem þú geymir kóðann.

$ sudo mkdir -p /var/www/svn

Næst skaltu fletta inn í möppuna og búa til geymslu með svadmin create skipuninni:

$ cd /var/www/svn/
$ sudo svadmin create demo_repo

Næst skaltu úthluta heimildum fyrir SVN skrána.

$ sudo chown -R apache.apache /var/www/svn

Skref 3: Búðu til Subversion stillingarskrá

Við þurfum að búa til Subversion stillingarskrá.

$ sudo vim /etc/httpd/conf.d/subversion.conf

Bættu við eftirfarandi línum.

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>

Vistaðu breytingarnar og hættu.

Skref 4: Búðu til viðurkennda Subversion notendur

Næsta skref er að búa til Subversion notendur þ.e. notendur sem munu fá aðgang að Subversion geymslunni. Til að búa til fyrsta notandann skaltu nota htpasswd skipunina með -cm valkostinum. Lykilorðin eru vistuð í /etc/svn-auth-users skránni.

$ sudo htpasswd -cm /etc/svn-auth-users svnuser1

Til að búa til síðari notendur skaltu sleppa -c valkostinum og nota aðeins -m valkostinn.

$ sudo htpasswd -m /etc/svn-auth-users svnuser2
$ sudo htpasswd -m /etc/svn-auth-users svnuser3

Til að nota breytingarnar sem gerðar eru skaltu endurræsa Apache vefþjóninn.

$ sudo systemctl restart httpd

Skref 5: Stilltu eldvegg og SELinux fyrir SVN

Stilltu eldvegginn til að leyfa HTTP umferð á eldveggnum sem hér segir:

$ sudo firewall-cmd --add-service=http --permanent
$ sudo firewall-cmd --reload

Að auki skaltu nota eftirfarandi SELinux reglur á geymslunni.

$ 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

Skref 6: Aðgangur að SVN úr vafra

Til að fá aðgang að SVN geymslunni þinni úr vafra skaltu einfaldlega fara á slóðina.

http://server-ip/svn/demo_repo

Til að byrja að nota SVN geymsluna þarftu að búa til vinnuafrit af SVN geymslunni á núverandi vinnuskrá með svn checkout skipuninni.

$ svn checkout URL 

Til að bæta við nokkrum skrám skaltu fara í klónuðu möppuna:

$ cd demo_repo

Búðu til nokkrar kynningarskrár:

$ touch file1.txt file2.txt file3.txt

Bættu skránum við SVN.

$ svn add file1.txt file2.txt file3.txt

Sendu síðan skrárnar í geymsluna sem hér segir:

$ svn commit -m "Adding new files" file1.txt file2.txt file3.txt

Staðfestu með skilríkjum þínum og skránum verður bætt við geymsluna.

Þú getur staðfest þetta með því að fara aftur í vafrann.

Og þetta lýkur handbókinni okkar um hvernig á að setja upp SVN á RHEL, CentOS, Fedora, Rocky Linux og AlmaLinux.