Ubuntu: SVN-Server installieren / konfigurieren

In diesem Beitrag möchte ich kurz beschreiben, wie man unter Ubuntu 10.10 einen SVN-Server mit WebDav installiert und konfiguriert. Als Voraussetzung verwende ich eine Installation von Ubuntu Server 10.10 als Virtuelle Maschine unter Virtualbox. Damit wird der SVN-Server zunächst “nur” in meinem lokalen Netz erreichbar sein.

Es ist aber auch durchaus denkbar, den SVN-Server übers www zu erreichen. Hier gibt es die Möglichkeit eines vServers / Root-Servers oder meine VM per DynDNS aus dem www zu erreichen. Bisher ist in der verwendeten VM nur ein LAMP und OpenSSH installiert. Bevor wir mit der Installation und der Konfiguration des SVN-Servers beginnen sollten wir kontrollieren ob unser System auf dem aktuellsten Stand ist. Dazu geben wir in der Konsole folgende Befehle nacheinander ein:

1. sudo apt-get update
2. sudo apt-get upgrade

Gegebenenfalls werden wir jetzt noch gefragt, ob wir der Installation der neuen Pakete zustimmen. Aber jetzt können wir sicher sein, dass unser System auf dem aktuellsten Stand ist und wir können mit der Installation des SVN-Servers beginnen. Dazu geben wir folgenden Befehl in der Konsole ein:

3. sudo apt-get install subversion libapache2-svn

Solltet ihr noch keinen Apache installiert haben könnt ihr folgende Zeile stattdessen eingeben:

sudo apt-get install subversion libapache2-svn apache2

Damit wäre die Installation schon abgeschlossen. Zunächst sollte getestet werden, ob der Apache erreichbar ist. Hier reicht ein Aufruf von localhost in einem Browser. Die nächsten Schritte dienen dazu den SVN-Server zu konfigurieren. Die Konfiguration kann so vorgenommen werden, dass Es nur ein Repository oder mehrere Repositories gibt. Ich bevorzuge die Konfiguration mit mehreren Repositoriers. Der Grund dafür ist ganz einfach. Auch wenn ich (zunächst) nur ein Repository benötige, habe ich für den Fall der Fälle sofort die Möglichkeit ein weiteres Repository anzulegen ohne die Konfiguration ändern zu müssen.

Wenn mehrere Repositories angelegt werden sollen, dann wird zunächst ein Verzeichnis benötigt, in dem die Repositories liegen. In dem Buch “Subversion” von Frank Budszuhn ist z.B das Verzeichnis /var/lib/repos/ angegeben. Im www findet man häufig auch nur /var/svn/, aber hier sind eurer Phantasie keine Grenzen gesetzt. Das Verzeichnis für die Repositories wird mit folgendem Befehl angelegt:

4. sudo mkdir /var/svn

Nun kann auch gleich das erste Repository anlegt werden. Hierzu bitte folgendes eingeben:

5. sudo svnadmin create /var/svn/RepositoryName

Damit unser neues Repository auch per http erreichbar ist muss es noch die nötigen Rechte bekommen.

6. sudo chown -R www-data:www-data /var/svn/RepositoryName/
7. sudo chmod -R g+ws /var/svn/RepositoryName/

Jetzt muss noch dafür gesorgt werden, dass nur berechtigte Personen auf das Repository zugreifen können.

8. sudo htpasswd -c -m /etc/apache2/dav_svn.passwd DeinBenutzerName

Die Konfiguration des Apache muss noch angepasst werden. Dazu sind Änderungen an der Datei dav_svn.conf vorgenommen werden.

9. sudo vi /etc/apache2/mods-available/dav_svn.conf
< Location /svn >

DAV svn

SVNParentPath /var/svn
AuthType Basic
AuthName "Subversion Repository"
AuthUserFile /etc/apache2/dav_svn.passwd
Require valid-user

< /Location >

Der Apache muss neugestartet werden, damit die Änderungen an der dav_svn.conf wirksam werden.

10. sudo /etc/init.d/apache2 restart

Der erste Funktionstest geschieht über einen Aufruf im Browser http://IP-Adresse-des-Servers/svn/RepositoryName.

3 Reaktionen zu “Ubuntu: SVN-Server installieren / konfigurieren”

  1. roland

    hallo,

    nur ein kleiner tippfehler in dem skript:
    es muss heissen: Require valid-user
    und nicht: Required valid-user

    gruesse, roland

  2. MaD

    du hast natürlich vollkommen Recht …. ist geändert … vielen Dank für den Hinweis …

  3. fabian

    phantastische anleitung! tausend dank!

Einen Kommentar schreiben