SVN: Difference between revisions

From ICO wiki
Jump to navigationJump to search
Jviiderm (talk | contribs)
No edit summary
Jviiderm (talk | contribs)
 
(30 intermediate revisions by the same user not shown)
Line 11: Line 11:
! scope="col" style="background:#efefef;" width="225" | Kommentaar
! scope="col" style="background:#efefef;" width="225" | Kommentaar
|-
|-
|    
|   0.1
|    
|   07.06.2011
|    
|   Struktuuri loomine
|-
|-
|
|   0.2
|
|   08.06.2011
|
|   SVN ja Apache konfigureerimine
|-
|    0.3
|    09.06.2011
|    Varundamine ja taastamine
|-
|    0.4
|    13.06.2011
|    Kokkuvõte
|-
|-
|}
|}


== Sissejuhatus ==
SVN on avatud lähtekoodiga versiooni kontrollisüsteem. Kasutades SVN-i saadakse ülevaade dokumentide ja kataloogide muudatuste ajaloost. Failid paigutatakse keskhoidlasse, mis on  tavaline failiserver (samba).
== Legend ==
On tarkvara arendusega tegelev asutus, kellel on palju partnereid, kes omakorda teevad erinevaid töid näiteks: analüüsivad, programmeerivad jms. Asutus kasutab SVN-i teenust, et partnerid saaksid asutusele kerge vaevaga tarnida valmis tulemeid (dokumendid, koodid jne).
== Skoop ==
Skoobis tuuakse välja SVN paigaldamine ja häälestamine.
== Eeldused ==
- Eelduseks on vähemalt 1 serveri olemasolu (Ubuntu server 10.04);<br/>
- Mõned kasutaja PC;<br/>
- Kasutajaid on kolm: Toomas, Tiit ja Mari.<br/>
== Tarkvara paigaldamine ==
Tuleb meeles pidada, et kasutaja peab olema Root õigustega, et käskluste ette ei peaks sudo kirjutama. Tuleb root kasutajana ennast sisse logida
<pre> sudo </pre>
=== Tarkvara pakettide paigaldamine ===
Instaleeritakse SVN, Apache ja libapache2-svn, mis sisaldab dav and dav_svn mooduleid, mida Apache vajab.
<pre>apt-get install subversion apache2 libapache2-svn</pre>
=== SVN konfigureerimine ===
Esimeseks sammuks on luua projektikaust ja siis vahetatakse projektikaust omanik-kasutajaks:
<pre>mkdir /etc/project
svnadmin create /etc/project/esimeneproject
</pre>
Anname project kaustale lugemise õigused. seda on võimalik teha kahte moodi
<pre>chown -R www-data:www-data /etc/project</pre>
või
<pre>chmod -R 770 /etc/project</pre>
Konfigureerime Apache, et oleks võimalik kasutada järgmisi mooduleid: dav, dav_svn
<pre>a2enmod dav
a2enmod dav_svn
</pre>
=== Kasutaja konto loomine ===
Luuakse kasutajakontod näiteks Toomas, Tiit ja Mari jaoks. Peale iga uue kasutajakonto loomist küsitakse password.
<pre>htpasswd -c /etc/apache2/svn.passwd toomas
htpasswd -c /etc/apache2/svn.passwd tiit
htpasswd -c /etc/apache2/svn.passwd mari</pre>
=== Kasutaja õiguste loomine ===
Järgmiseks konfigureeritakse igale kasutajale vastavad õigused, mis kirjeldatakse ära  svn.authz konfiguratsiooni failis.
<pre>vi /etc/apache/svn.authz
[/]
james = rw
peter = r
thomas = r
</pre>
Antakse kasutajale Toomas õigus SVN projektikausta vaadata ja kirjutad, kusjuures kasutajad Tiit ja Mari võivad seda ainult vaadata.
Järgmiseks lõpetatakse Apache konfigureerimine. Kasutajatele antakse vastavad õigused  Projektikausta jaoks.
Seda tehakse alloleva teksti sisestamisega Apache konfiguratsiooni failis.
<pre><location /svn>
DAV svn
SVNPath
AuthType Basic
AuthName "Our Repository"
AuthUserFile /etc/apache2/svn-passwd
AuthzSVNAccessFile /etc/apache2/svn.authz
Require valid-user
</location>
</pre>
See järel tuleb teha Apachele restart
<pre>/etc/init.d/apache2 restart </pre>
== Testimine ==
Kui avada veebi brauser ja sisestada http://hostname/svn, siis avaneb autentimise aken kuhu kasutaja (kellel on õigused kasutada SVN) sisestab oma kasutaja nime ja parooli.
== Varundamine ja taastamine ==
Kõigepealt teeme hoidlast backup-i
<pre>svnadmin dump /path/to/project | gzip > backup.gz</pre>
ja taastada saame järgneva käsuga
<pre>$ gunzip -c backup.gz | svnadmin load /path/to/project</pre>
== Kokkuvõte ==
SVN on arenev keskkond ja oma mugava kasutusvõimalusega leiab viimasel ajal üha enam kasutajaid nii riigiasutuses kui ka erasektoris.
Arendades SVN teenust edasi; tuues juurde sertifikaadid (kasutades https protokolli), sisselogimist liidestades (LDAP või mõne teise autentimise mehhanismiga). Need on vaid mõned lisavõimalused, mida antud artiklis (töös) ei leia kirjeldamist.
== Kuidas panna SVN vastu LDAP-i autentima ==
LDAP on aternatiiv. Kellel huvi saab seda lugeda siit<br/>
http://kuutorvaja.eenet.ee/wiki/Subversion_hoidla_kasutamine_Debianiga#Kasutajate_autentimine_vastu_LDAP_kataloogi<br/>
http://www.johandekoning.nl/index.php/2008/08/30/ubuntu-apache-ssl-subversion-and-ldap/<br/>
http://ionz.org/2008/how-to-install-trac-with-ldap-painlessly-on-ubuntu-804-hardy/<br/>


== Kasutatud materjalid ==
Kellel huvi asja vastu saab matrjale vaadata ka siit <br/>
http://subversion.apache.org/<br/>
http://net.tutsplus.com/tutorials/other/enhancing-your-ubuntu-server/<br/>
http://www.howtoforge.com/subversion-trac-virtual-hosts-on-ubuntu-server<br/>
http://www.zoneminder.com/wiki/index.php/Ubuntu_8.10_Vanilla_32bit_%28with_FFmpeg_SVN,_ZoneMinder_SVN,_jscalendar-1.0,_cambozola-0.7%29<br/>
[[Category:IT infrastruktuuri teenused]]
[[Category:IT infrastruktuuri teenused]]

Latest revision as of 15:09, 14 June 2011

Autor

Nimi: Janar Viidermets
Grupp: AK41

Versioon

Versioon Kuupäev Kommentaar
0.1 07.06.2011 Struktuuri loomine
0.2 08.06.2011 SVN ja Apache konfigureerimine
0.3 09.06.2011 Varundamine ja taastamine
0.4 13.06.2011 Kokkuvõte

Sissejuhatus

SVN on avatud lähtekoodiga versiooni kontrollisüsteem. Kasutades SVN-i saadakse ülevaade dokumentide ja kataloogide muudatuste ajaloost. Failid paigutatakse keskhoidlasse, mis on tavaline failiserver (samba).

Legend

On tarkvara arendusega tegelev asutus, kellel on palju partnereid, kes omakorda teevad erinevaid töid näiteks: analüüsivad, programmeerivad jms. Asutus kasutab SVN-i teenust, et partnerid saaksid asutusele kerge vaevaga tarnida valmis tulemeid (dokumendid, koodid jne).

Skoop

Skoobis tuuakse välja SVN paigaldamine ja häälestamine.

Eeldused

- Eelduseks on vähemalt 1 serveri olemasolu (Ubuntu server 10.04);
- Mõned kasutaja PC;
- Kasutajaid on kolm: Toomas, Tiit ja Mari.

Tarkvara paigaldamine

Tuleb meeles pidada, et kasutaja peab olema Root õigustega, et käskluste ette ei peaks sudo kirjutama. Tuleb root kasutajana ennast sisse logida

 sudo 

Tarkvara pakettide paigaldamine

Instaleeritakse SVN, Apache ja libapache2-svn, mis sisaldab dav and dav_svn mooduleid, mida Apache vajab.

apt-get install subversion apache2 libapache2-svn

SVN konfigureerimine

Esimeseks sammuks on luua projektikaust ja siis vahetatakse projektikaust omanik-kasutajaks:

mkdir /etc/project
svnadmin create /etc/project/esimeneproject

Anname project kaustale lugemise õigused. seda on võimalik teha kahte moodi

chown -R www-data:www-data /etc/project

või

chmod -R 770 /etc/project

Konfigureerime Apache, et oleks võimalik kasutada järgmisi mooduleid: dav, dav_svn

a2enmod dav 
a2enmod dav_svn 

Kasutaja konto loomine

Luuakse kasutajakontod näiteks Toomas, Tiit ja Mari jaoks. Peale iga uue kasutajakonto loomist küsitakse password.

htpasswd -c /etc/apache2/svn.passwd toomas 
htpasswd -c /etc/apache2/svn.passwd tiit 
htpasswd -c /etc/apache2/svn.passwd mari

Kasutaja õiguste loomine

Järgmiseks konfigureeritakse igale kasutajale vastavad õigused, mis kirjeldatakse ära svn.authz konfiguratsiooni failis.

vi /etc/apache/svn.authz 
[/] 
james = rw 
peter = r 
thomas = r 

Antakse kasutajale Toomas õigus SVN projektikausta vaadata ja kirjutad, kusjuures kasutajad Tiit ja Mari võivad seda ainult vaadata. Järgmiseks lõpetatakse Apache konfigureerimine. Kasutajatele antakse vastavad õigused Projektikausta jaoks. Seda tehakse alloleva teksti sisestamisega Apache konfiguratsiooni failis.

<location /svn> 
DAV svn 
SVNPath 
AuthType Basic 
AuthName "Our Repository" 
AuthUserFile /etc/apache2/svn-passwd 
AuthzSVNAccessFile /etc/apache2/svn.authz 
Require valid-user 
</location> 

See järel tuleb teha Apachele restart

/etc/init.d/apache2 restart 

Testimine

Kui avada veebi brauser ja sisestada http://hostname/svn, siis avaneb autentimise aken kuhu kasutaja (kellel on õigused kasutada SVN) sisestab oma kasutaja nime ja parooli.

Varundamine ja taastamine

Kõigepealt teeme hoidlast backup-i

svnadmin dump /path/to/project | gzip > backup.gz

ja taastada saame järgneva käsuga

$ gunzip -c backup.gz | svnadmin load /path/to/project

Kokkuvõte

SVN on arenev keskkond ja oma mugava kasutusvõimalusega leiab viimasel ajal üha enam kasutajaid nii riigiasutuses kui ka erasektoris. Arendades SVN teenust edasi; tuues juurde sertifikaadid (kasutades https protokolli), sisselogimist liidestades (LDAP või mõne teise autentimise mehhanismiga). Need on vaid mõned lisavõimalused, mida antud artiklis (töös) ei leia kirjeldamist.

Kuidas panna SVN vastu LDAP-i autentima

LDAP on aternatiiv. Kellel huvi saab seda lugeda siit
http://kuutorvaja.eenet.ee/wiki/Subversion_hoidla_kasutamine_Debianiga#Kasutajate_autentimine_vastu_LDAP_kataloogi
http://www.johandekoning.nl/index.php/2008/08/30/ubuntu-apache-ssl-subversion-and-ldap/
http://ionz.org/2008/how-to-install-trac-with-ldap-painlessly-on-ubuntu-804-hardy/

Kasutatud materjalid

Kellel huvi asja vastu saab matrjale vaadata ka siit
http://subversion.apache.org/
http://net.tutsplus.com/tutorials/other/enhancing-your-ubuntu-server/
http://www.howtoforge.com/subversion-trac-virtual-hosts-on-ubuntu-server
http://www.zoneminder.com/wiki/index.php/Ubuntu_8.10_Vanilla_32bit_%28with_FFmpeg_SVN,_ZoneMinder_SVN,_jscalendar-1.0,_cambozola-0.7%29