Subversion unter Windows aufsetzten
Ich bespreche hier die wahrscheinlich einfachste Variante zur Installation und Erzeugung eines SVN Repositories ohne externe Datenbank. Hier wird das Repository lediglich im Filesystem erzeugt. Es gibt sicher weitaus bessere und performantere Möglichkeiten (beispielsweise mit Apache und einer Datenbank), doch geht es hier nur darum ein einfaches kleines SVN Repository unter Windows aufzusetzten.
- Als erstes Subversion als Binary Package herunterladen: http://subversion.apache.org/packages.html#windows
- Installieren (in diesem Beispiel nach “C:\Program Files\Subversion“)
- Verzeichnis für das Repository anlegen. Z.B. “D:\SVN-Repository“
- Dann das Repository in SVN erzeugen: svnadmin create –fs-type fsfs “D:\SVN-Repository”
- Nun im Repository Verzeichnis in das Unterverzeichnis
conf wechseln, und dort in der Datei svnserve.conf folgende Zeilen
hinzufügen:
[miscellany]
# Automatisch Properties wie $Id$ einfügen
enable-auto-props = yes
[auto-props]
# in welchen Dateien sollen automatisch welche
# Keywords eingefügt werden
*.php = svn:keywords=Id
[general]
# Anonymen Zugriff verbieten
anon-access = none
# Angemeldeten Benutzern das Schreiben erlauben
auth-access = write
# Datei welche die Benutzername=Passwort Paare enthält
password-db = passwd - Die im letzten Schritt angegebene Passwortdatei anlegen:
[users]
John=JohnsPasswort
Sally=SallysPasswort - Ggf. noch den svnserver (in unserem Beispiel “C:\Program Files\Subversion\bin\svnserve.exe”) in der Windows Firewall als Ausnahme hinzufügen, falls der SVN Server von aussen erreichbar sein soll
- Nun kann der SVNServer in der Eingabeaufforderung gestartet werden: svnserve -d -r “D:\SVN-Repository“
- Um diesen als Dienst starten zu können, muss man den
SVNServer als Dienst in Windows registrieren (man beachte, dass bei
Leerzeichen im Verzeichnisnamen dieser in Anführungszeichen gesetzt
werden muss, und diese ggf. doppelt escaped werden müssen. Ausserdem
muss hinter den Gleichheitszeichen der Optionen ein Leerzeichen folgen
(also z.B. depend= <OptionValue>):
sc create svnserv binpath= “\”C:\Program Files\Subversion\bin\svnserve.exe\” –service -r \”D:\SVN-Repository\”” displayname= “Subversion Repository” depend= Tcpip