SVN-Server (über http(s)) einrichten

Subversion installieren: apt install subversion libapache2-svn

Das Repository-Verzeichnis z.B. /var/local/svn dem Domain Benutzer zuordnen.

Dateien für Benutzer und Zugriffsrechte anlegen. z.B.

Benutzer mit Passwörter: '/etc/subversion/dav_svn.passwd'

Zugriffsrechte auf Repos: '/etc/subversion/dav_svn.authz'

Die Domain-Konfiguration um folgenden Eintrag ergänzen:

<Location /svn>
DAV svn
SVNParentPath /var/local/svn
AuthType Basic
AuthName "Restricted area for Subversion repositories."
AuthUserFile /etc/subversion/dav_svn.passwd
AuthzSVNAccessFile /etc/subversion/dav_svn.authz
Require valid-user
</Location>

Benutzerrechte

/srv/svn/config/svnserve.conf

Diese Datei nach erstellen eines Repositories ins conf-Verzeichnis des neuen Repositories kopieren und bei realm den Namen des Repository eintragen. (Dies wird vom Script svnc beim erstellen automatisch erledigt)

[general]
anon-access = none
auth-access = write
password-db = /etc/subversion/dav_svn.passwd
authz-db = /etc/subversion/dav_svn.authz
realm = My First Repository

/srv/svn/config/passwd

Hier sind die Benutzer mit Passwoerter im Klartext hinterlegt. Um den Zugriff ueber WebSVN sicherzustellen muss die Datei /srv/svn/config/htusers konsistenz gehalten werden. (Dies wird ueber das Script svnc beim erstellen automatisch erledigt)

Beispiel

### globale Benutzer und Passwortdatei für den SVN-Server
### muss in der repository svnserve.conf eingetragen werden
### Its format is similar to that of svnserve.conf. As shown in the
### example below it contains one section labelled [users].
### The name and password for each user follow, one account per line.
[users]
harry =harryssecret
sally =sallyssecret
[Bearbeiten] /srv/svn/config/authz
In dieser Datei sind die Berechtigungen und die Gruppen definiert.
Berechtigungen vom 09.12.2010
#########################
# Benutzergruppen
#########################
[groups]
admins =admin
users =jhuber
developers =jhuber
#########################
# Globale Berechtigungen
#########################
[/]
@admins = rw
@developers = r
@users = r
* =
[/work]
@developers = rw
[/tags]
@developers = rw
@users = r
[/public]
* = r
############################
# Repository Berechtigungen
############################
[r_itservice:/]
@admins = rw
jhuber = rw
* =

Siehe auch

http://svnbook.red-bean.com/en/1.5/index.html