{{page>:menu}}
====== SVN ======
===== Příprava =====
* [col blue]''svnadmin create --fs-type bdb /home/svn/repo''[/col] - vytvoření repository používající databáze pro ukládání změn, lepší je ale použít klasický FS
* **/repos/conf/svnserve.conf** nastavit správná práva
[general]
anon-access = none
auth-access = write
password-db = /home/svn/passwd
realm = realm
* spustit **svnserve -d** nebo lépe použít **xinet.d** a k serveru se pak přihlásit přes ''svn:''
service svn
{
socket_type = stream
protocol = tcp
wait = no
user = svnserve
server = /usr/bin/svnserve
server_args = -i -r /home/svn
}
===== TortoiseSVN =====
Návod, jak přidat již existující projekt do správy SVN.
* stáhnout [[http://sourceforge.net/project/showfiles.php?group_id=138498|TortoiseSVN]]
* [[http://merlin.fit.vutbr.cz/wiki/index.php?title=SVN_tutori%C3%A1l|SVN tutoriál]]
* vytvořit v //Průzkumníkovi úložiště// SVN větev, kde bude vývojová verze např. https://svn.datron.cz/repos/projekt/trunk\\ {{linux:net:svn2.gif}}\\ Je vhodné vytvořit i https://svn.datron.cz/repos/projekt/branches kam přijdou jednotlivé verze.
* Inspiraci v rozložení adresářů jsem čerpal z SVN svn://svn.cacti.net/var/svnroot/cacti\\ {{linux:net:svn-cacti.gif}}
* provést **checkout** této větve z https://svn.datron.cz/repos/projekt/trunk do adresáře, kde je projekt (pravá myš na tom adresáři -> CHECKOUT). Protože je repository prázdné, nic se v adresáři s projektem nepřepíše, ale v adresáři projektu se vytvoří podadresář **.svn**\\ {{linux:net:svn1.gif}}
* pak už jen zbývá vybrat a přidat soubory určené k verzování -> pravá myš na adresáři -> TortoiseSVN -> **přidat** a následně se musí provést **COMMIT**
====== SVN Server ======
===== Apache2 =====
* Návod na [[http://svnbook.red-bean.com/en/1.1/svn-book.html#svn-ch-6-sect-4|svnbook.red-bean.com]]
* ''yum install mod*svn''
* repository musí být typu FS
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
DAV svn
SVNParentPath /home/svn
AuthzSVNAccessFile /etc/httpd/conf/svnaccess
SSLRequireSSL
AuthType Basic
AuthName "SVN pristup"
AuthUserFile /etc/httpd/conf/passwd
Require valid-user
==== hesla ====
* ''htpasswd -cm /etc/file user'' - pro vytvoření
* ''htpasswd -m /etc/file user'' - pro přidání
==== svnaccess ====
## neni nutny restart Apache
[groups]
everyone = mtalma
[dhelp:/]
mtalma = rw
[dhelp:/branches]
kabelovna = r