Benutzer-Werkzeuge

Webseiten-Werkzeuge


software:apache:subversion

Apache: Subversion (dav_svn)

← Zurück zum Artikel Apache Webserver

Mittels # apt-get subversion libapache2-svn apache2-mpm-prefork kann man sich den Apache SVN-Server holen. Um über den Apache Webserver Zugriff auf das Repository zu erlangen, muss man noch das entsprechende Apache-Modul aktivieren: # a2enmod dav_ svn. Weitere Informationen unter subversion.

Anpassen der Webserverkonfiguraion

Die Datei /etc/apache2/mods-enabled/dav_svn.conf steuert die Konfiguration und muss bei mehreren Repositories wie folgt angepasst werden:

<Location /svn>
  DAV svn								# Aktiviert den Zugriff
  SVNPath /var/local/svn						# Pfad zu den Repos
  AuthType Basic							# Authentifizierung
  AuthName "Subversion repository"
  AuthUserFile /etc/apache2/dav_svn.passwd
  <LimitExcept GET PROPFIND OPTIONS REPORT>
     Require valid-user
  </LimitExcept>
</Location>

Anlegen eines Repositories

In einem Verzeichnis, das nicht das Document Root-Verzeichnis des Webservers ist, kann dann angelegt werden (z.B. /srv/svn/repo1). Mittels

svnadmin create [nameDesRepositories]

Wird dann ein Repository erzeugt. Um das Verzeichnis auch aus dem Internet erreichbar zu machen, muss man den Dateibesitz zu www-data:www–data ändern und dem Webserver ggf. Schreibrechte geben.

Benutzer hinzufügen und Berechtigung erteilen

Informationen unter: http://wiki.ubuntuusers.de/Subversion#Zentrale-Zugriffsbeschraenkung-mehrerer-Projekte

Allg.: Für alle Repositories mit direktem Bezug zum Studium wurde der Übersicht wegen ein Meta-Repository „wibaStud“ erstellt. Diesem untergeordnet liegen alle SVN-Ordner, die als eigenständige Repositories betrachtet werden.

Für einen SVN-Zugang muss kein Benutzer auf der Ubuntu-Maschine angelegt werden, sondern nur in der Datei unter

/etc/apache2/dav_svn.authz

Dort werden anfangs Gruppen definiert, die als Berechtigte einem Repository zugeordnet werden können. Es ist zudem möglich, einzelne Benutzern bestimmte Rechte zu geben.

Schließlich muss das Password eines Nutzers angelegt/geändert werden mit

htpasswd -b dav_svn.passwd <NUTZER>

Repositories Verwalten (''svnadmin'' Befehle)

Befehl Beschreibung Benutzung
create Erstellt ein Repository
dump Exportiert ein Repository incl. aller Revisionen
load Importiert einen Dump als Repository mittels –parent-dir kann ein Dump auch in ein anderes Repository integriert werden1)

Zugriff auf Repositories mit WebDAV und Autoversioning

Sicherung und Wiederherstellung von Repositories

Sicherung und Wiederherstellung via dump

Die Sicherung von SVN-Repositories geschiehst am Besten mit:

svnadmin dump [REPOSITORY] | gzip -9 > [DUMPFILE].tgz

Die Rücksicherung wird dann folgendermaßen aufgerufen2):

gunzip -c [DUMPFILE].tgz | svnadmin load [REPOSITORY]

Wiederherstellung einer Hartkopie

Liegt lediglich eine einfache Kopie der Verzeichnisstruktur vor, kann es ggf. zu Problemen kommen, da Datei-Sperren vorhanden sind oder die Datenbank inkonsistent ist. Hier bietet es sich an, folgende Pflegeläufe durchzuführen:

svnadmin recover [REPOSITORY]/   # zum Wiederherstellen der Datenbank
svnadmin verify [REPOSITORY]/    # konsistenzprüfung der einzelnen Revisionen

Bei Verwendung dieses Wikis erklären Sie sich mit dem Haftungsausschluss, Nutzungsbedingungen und der Datenschutzerklärung dieses Wikis einverstanden. Impressum.

software/apache/subversion.txt · Zuletzt geändert: 2013/11/05 11:10 von khopf