Subversion versiju kontrole
Saturs
- Komandrindas klienta uzstādīšana
- Servera uzstādīšana
- Pieejas tiesību pārvaldība
- Lietošana
- Saites
- Alternatīvas
Komandrindas klienta uzstādīšana
Izpilda komandu:
sudo apt-get install subversion
Servera uzstādīšana
Kā root lietotājs uzstāda subversion serveri
apt-get install apache2 subversion libapache2-svnIespējo Apache moduli:
a2enmod authz_svnIzveido SVN mapi un saliek pieejas tiesības:
mkdir /home/svn
groupadd -g 1600 subversion
usermod -a -G subversion rootIzveido SVN krātuvi un testa projektu:
svnadmin create /home/svn/test_project
chown -R www-data:subversion /home/svn
chmod -R 770 /home/svn(Pēc katra jauna projekta izveidošanas "chown" un "chmod" komandas ir jāatkārto uz jaunās krātuves saknes mapes.)
Izveido papildu Apache virtuālo direktoriju. Failā /etc/apache2/mods-available/dav_svn.conf pievieno tekstu:
<Location /svn>
DAV svn
SVNParentPath /home/svn
AuthType Basic
AuthName "Subversion repository"
AuthUserFile /etc/apache2/svn-passwd
# uncomment this to allow anonymous "checkout".
#<LimitExcept GET PROPFIND OPTIONS REPORT>
Require valid-user
#</LimitExcept>
AuthzSVNAccessFile /etc/apache2/svn-acl
</Location>
Pieejas tiesību pārvaldība
Izveido apache lietotāju failu (slēdzis -cm pirmajai komandai) ar guest lietotāju, pievieno esošajam failam visus citus lietotājus (slēdzis -m):
htpasswd -c /etc/apache2/svn-passwd guest
htpasswd /etc/apache2/svn-passwd student
...
htpasswd /etc/apache2/svn-passwd userNIzveido svn moduļa konfigurācijā norādīto pieejas kontroles failu /etc/apache2/svn-acl ar sekojošu saturu:
[groups]
readers = guest
writers = student
# pieejas tiesību definēšana uz visu repozitoriju
# Writewrs grupa var rakstīt un lasīt
# pārējie var tikai lasīt
[bootcamp:/]
@writers = rw
* = r
# Sekojoši var norādīt tiesības uz konkrētu mapi:
#[repository:/folder]
#user1 = rw
#@writers = rw
#@readers = r
#* = rPārstartē Apache:
/etc/init.d/apache2 restart- Pieslēdzas SVN ar Subclipse, kā URL norādot http://localhost/svn/test_project. Izveido trunk, mapi, kurā lieka iekšā visu kodu, un pēc vajadzības arī citas mapes (piemēram, "tags" vai "branches").
Lietošana
svn:ignore iestatīšana
Lai apskatītu esošās SVN krātuves īpašības, ievada komandu:
svn proplist -RvLai ignorējamam sarakstam pievienotu, piemēram, failu/mapi, kas nosaukumā satur: *sample*, ievada komandu:
svn propset svn:ignore "*sample*" -R .
svn:ignore rekursīva izdzēšana
Lai rekursīvi izdzēstu visas ignorējamo failu īpašības, ievada komandu:
svn propdel svn:ignore -R
Rekursīva .svn mapju dzēšana
lai rekursīvi izdzēstu visas .svn mapes, izpilda komandu:
Izmaiņu izskatīšana un apstiprināšana
Nepieciešamās izmaiņas apskata ar komandu:
svn diffIzmaiņas apstiprina ar komandu:
svn commit -m "Intial commit"
Saites
Alternatīvas
Created by Valdis Vītoliņš on 2008-08-09 16:01
Last modified by Valdis Vītoliņš on 2021-04-13 14:30