[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [OT:] SVN-Tutorial



Hannes H. wrote:

> Ein (verlängertes) Wochenende steht vor der Tür und ich würde es gerne
> sinnvoll nutzen und einen Subversion-Server zu installieren.

Wobei hier heute die Sonne scheint und wenn es am Wochenende genauso
wird dann wuerde ich was anderes machen :-)

> Da ich leider totaler Newbie in Sachen SVN bin würde es mich freuen,
> wenn ihr mir ein paar Tipps für (gute) deutspracheige Tutorials geben
> könntet. Ich hab gestern eine Stunde im Netz recherchiert aber nicht
> wirklich etwas passendes gefunden.

Kein Problem, das installieren eines Subversion-Servers ist auch nicht
wirklich aufregend, zumindest unter Debian nicht:

apt-get install subversion
apt-get install libapache2-svn

Danach brauchst Du noch einen Eintrag fuer die Apache-Konfig, die wird
nicht automatisch erzeugt (IMHO), sieht etwa so aus:

<VirtualHost 1.2.3.4:443>
        ServerName svn.foo.bar
        ServerAlias subversion.foo.bar
        ServerAdmin webmaster@localhost
        SSLEngine On
        SSLCertificateFile /etc/apache2/apache.cert.pem
        SSLCertificateKeyFile /etc/apache2/apache.key.pem

        <Location /svn>
                DAV svn
                SVNParentPath /svn
                AuthType Basic
                AuthName "Subversion Repository"
                AuthUserFile /etc/apache2/dav_svn.passwd
                Require valid-user
                AuthzSVNAccessFile /etc/apache2/dav_svn.authz
        </Location>

        DocumentRoot /var/www/subversion

        <Directory />
                Options FollowSymLinks
                AllowOverride None
        </Directory>
</VirtualHost>

Muss natuerlich angepasst werden, versteht sich - SSL ist keine
Vorraussetzung, aber sicher eine gute Idee und die Repositories liegen
alle in /svn (bei mir eben eine eigene Partition).

Die beiden erwaehnten Files dienen zur Authentifizierung und zur
Authorisierung. dav_svn.passwd stehen wie in einer .htpasswd die Nutzer
und deren verschluesselte Passwoerter (kann man mit htpasswd2
erstellen). dav_svn.authz regelt, was ein Nutzer darf, wenn er
eingeloggt ist, so kann man z.B. Zugriff auf einzelne Repositories oder
gar einzele Verzeichnisse oder Dateien darin einschraenken - solange Du
noch 'allein' bist erstmal nicht soo wichtig.

Einziger 'Schwachpunkt' bei diesem Ansatz ist, dass alle Repositories in
/svn vom User des Webservers les- und schreibbar sein muessen. Im
einfachsten Fall legt man sie daher als www-data an (oder setzt die
Rechte auf /svn entsprechend mit setgid und gibt das Verzeichnis an
www-data).

Ein neues Repository bekommst Du dann mit:

svnadmin create /svn/mein_erstes_repository

> Ich nehme an, ich bin nicht der erste mit diesem Vorhaben ;-)

Sicher nicht - hoffe das hilft Dir erstmal etwas, sonst ist DIE Quelle
fuer Subversion das SVNBook, allerdings leider in Englisch, dort ist
aber alles sehr gut beschrieben:

http://svnbook.red-bean.com/
http://linuxwiki.de/SubVersion

HTH,
Jan



Reply to: