Subversion in a Nutshell: der schnelle Weg zum eigenen Repository…

Nachdem ich lange lange rumgebastelt und einen Berg unterschiedlichen Hinweisen und Erklärungen zu Subversion gelesen habe, hab ich mich entschlossen, ein kurzes Howto zusammenzuschreiben, wie ich das Ganze aufgesetzt habe, wobei ich bewußt darauf verzichte alles aus den Sourcen zu bauen…
Installation der benötigten Pakete:

Als Basis dient mir ein Debian Testing System mit den folgenden Paketen:

  • apache2-common
  • libapache2-svn
  • subversion

Alle weiteren notwendigen Abhängigkeiten werden durch apt-get mitinstalliert.

Konfiguration:

Ich habe mich entschieden, für Subversion einen eigenen User anzulegen, in dessen Home Verzeichnis alle Repositories ihren Platz finden. Unter dieser Userkennung wird auch später der Apache laufen. Dazu legen wir einen User und eine Gruppe svn an:

groupadd svn

useradd –create-home –gid svn svn

Unser späteres Repository soll testrepository heissen und in /home/svn/svn liegen. Damit der Apache damit auch umgehen kann, ist eine Anpassung der Konfigurationsdatei erforderlich, in unserer Beispielinstallation unter: /etc/apache2/apache2.conf.Wir ändern apache-user und -group (normalerweise www-data) auf svn. Folgende Einträge sind erforderlich um das spätere Repository unter der URL: http://server.domain/svn/ bekannt zu geben:

DAV svn # Webdav aktivieren

SVNParentPath /home/svn/svn # wo liegen die repositories im Filesystem

SVNListParentPath on

AuthType Basic # wir wollen Authorisierung mittels htaccess

AuthName “Subversion Repository” # Name des Authorisierungsdialogs

AuthUserFile /home/svn/svn-auth-file # wo sind zugelassene User hinterlegt

Require valid-user # keine anonyme Anmeldung möglich

Nachdem wir diese Einträge gemacht haben, legen wir noch das Auth-file unter /home/svn/ an:

touch /home/svn/svn-auth-file

und legen einen Testuser für den Zugriff an:

htpasswd /home/svn/svn-auth-file testuser

Nun ein Neustart des Apache, damit alles Änderungen wirksam werden:

/etc/init.d/apache2 restart

Was uns noch fehlt ist ein Repository, welches wir als User svn in unserem ~/svn/ anlegen:

su - svn

cd svn/

svnadmin create testrepository

So, damit sind die Grundlagen gemacht: Ob alles funktioniert lässt sich folgendermassen testen:

Zugriff auf das Repository mit Subversion Mitteln:

  • svnadmin verify repository
  • svn info file://home/svn/svn/
  • svn info http://server.domain/svn/

Mit dem Browser:

  • http://server.domain/svn/
diesen Eintrag bookmarken:
  • E-mail this story to a friend!
  • del.icio.us

Datum: Freitag, 13. Oktober 2006 10:35
Themengebiet: Allgemein, Development, Howto, codehacker, stuff for nerds Trackback: Trackback-URL
Feed zum Beitrag: RSS 2.0 Diesen Artikel kommentieren

Kommentar abgeben