Subversion einrichten unter Debian

Diese Installationsanleitung für Subversion bezieht sich auf einen Debian „Lenny“ Server.

Inhalt:

  1. Installation
  2. Einrichtung eines Projekts
  3. Subversion Server starten
  4. Zugriff testen
  5. Mehrere Subversion Repositories verwalten

Installation

Subversion ist schnell installiert.

sudo apt-get install subversion

Einrichtung eines Projekts

Die Einrichtungsmethode ist darauf ausgelegt, mehrere eigenständige Projekte verwalten zu können, daher nutzen wir Unterverzeichnisse.

Wir erstellen also zunächst den Pfad und richten diesen im Anschluß als SVN Repository per svnadmin ein:

mkdir -p /var/local/svn/projekt1/
svnadmin create --fs-type fsfs /var/local/svn/projekt1/

Nun können wir auch schon die notwendigen Konfigurationsdateien anpassen …

sudo vim /var/local/svn/projekt1/conf/svnserve.conf

… und dort folgendes eintragen:

[general]
anon-access = read
auth-access = write
password-db = passwd
realm = Bigace CMS Repository

Im nächsten Schritt definieren wir einen SVN Zugang, damit wir auch schreibend zugreifen können…

sudo vim /var/local/svn/projekt1/conf/passwd

…und nennen diesen Account admin mit dem Passwort testpasswort.

[users]
admin = testpassword

Subversion Server starten

Um den Subversion im späteren Verlauf sauber starten und stoppen zu können, legen wir ein Init.d Skript an…

sudo vim /etc/init.d/subversion

…wo folgender Code hineinkopiert werden kann:

#!/bin/bash

case "$1" in
        start)
                svnserve -d -r /var/local/svn
                ;;
        stop)
                killall svnserve
                ;;
        restart)
                $0 stop
                sleep 3
                $0 start
                ;;
esac

Nicht vergessen, das Skript ausführbar zu machen:

sudo chmod +x /etc/init.d/subversion

Damit Subversion nach einem Server Neustart automatisch mitgestartet wird, fügen wir es zum Abschluß noch zu den nötigen Runleveln hinzu:

sudo update-rc.d subversion defaults

Über die Befehle:

sudo /etc/init.d/subversion start
sudo /etc/init.d/subversion stop
sudo /etc/init.d/subversion restart

kann man den Subversion Server dann starten, stoppen und neustarten.

Zugriff testen

Um nun den Zugriff auf das Repository auszuprobieren starten wir zunächst den Subversion Server (u.U. läuft dieser bereits) und verwenden im Client die folgende URL:

svn://ihreIp/projekt1

Für schreibenden Zugriff verwenden Sie den zuvor angelegten admin Benutzer!

Mehrere Subversion Repositories verwalten

Wenn man in Zukunft weitere Repositories hinzufügen will, wiederholt man einfach den Abschnitt Einrichtung eines Projekts.

Im Standardverhalten muß man bei unterschiedlichen Repositories immer die Konfigurationsdateien neu anpassen. Möchte man aber nicht jedesmal die Konfigurationsschritte wiederholen, kann man einfach zwei Konfigurationsdateien anlegen, die dann für alle Repositories gelten:

sudo touch /var/local/svn/passwd
sudo touch /var/local/svn/svnserve.conf

In diese kopiert man einfach den Code der bereits oben genannt wurde und passt nur noch den start Aufruf im Init.d Skript an:

svnserve --config-file /var/local/svn/svnserve.conf -d -r /var/local/svn

Das war es auch schon, Subversion ist fertig konfiguriert und einsatzbereit!