Subversion Repository erzeugen

Um ein Subversion Repository zu erzeugen benötigt ihr einen Subversion Server, eine Anleitung dazu findet ihr mit Google oder für Suse und Plesk unter http://www.fornex.de/?p=7. Für Ubuntu User empfiehlt sich die Ubuntuuser Wiki - Thema: Subversion. Zuerst müsst ihr ein Verzeichniss für das SVN (Subversion)anlegen. Wenn ihr z.B. mehrere Repositorys haben möchtet, um zu verhindern das bei Problemen mehrere Projekte gefährdet sind. Müsst ihr den folgenden Schritt jedesmal wiederholen. svnadmin create --fs-type fsfs /var/local/svn oder svnadmin create /var/local/svn Das erste sollte man anwenden wenn bei der Anwendung des zweiten folgender Fehler kommt:

svnadmin create /home/svn/ svn: Berkeley DB error while creating environment for filesystem /home/svn/db: Invalid argument svn: bdb: Berkeley DB library configured to support only DB_PRIVATE environments

Als nächstes geben wir dem Verzeichniss Schreibrechte: chown -R (username):(Gruppe zu der der user gehöhrt) /var/local/svn Nun müsst ihr ihn eure conf datei gehen für den apache. Wenn ihr mehrer Domains benutzt findet ihr sie meistens in einem Unterverzeichniss der Domains. Damit könnt ihr das Repository nur einer bestimmten Domain zuweisen.

< Location /svn >

DAV svn

SVNPath /var/local/svn

AuthType Basic

AuthName “Subversion repository”

AuthUserFile /etc/apache2/dav_svn.passwd

Require valid-user

</ Location >

Das tragt ihr dann am Ende der Datei ein, aber noch vor dem letzten Schlusstag in der Datei. Danach folgenden Befehl benutzen um einen User zu erstellen. -c löscht alle bisherigen User. Der Pfad ist die datei wo der Zugang gespeichert wird, sie muss mit dem der Datei über einstimmen die man oben in die Apache conf geschrieben hat. htpasswd2 -c /etc/apache2/dav_svn.passwd ein-Nutzer Danach den Apache Restarten. Sollte htpasswd2 nicht funktionieren, mal htpasswd versuchen. Nun, nur noch ein Import machen und wir sind fertig. Dazu erstellen wir mit mkdir ein Projektverzeichniss, welches wir im folgendem Importbefehl angeben werden:

svn import <verzeichniss adresse vom Wurzelverzeichniss aus z.B. /tmp/projekt1> http://localhost/svn/projekt1 -m “initialer Import”

Bei http://local.... localhost und den teil danach durch die Domain ersetzen in deren conf man den SVN eintrag gemacht hat. Der Teil nach Location bildet dan den Rest der Adresse. Z.B. die Domain testuser.de hat im < Location /svn/zwei > stehen dann heißt die http:// Adresse: http://testuser.de/svn/zwei . So nun habt ihr ein Repository erstellt und ein Projekt eingefügt. Für Subversion gibt es auch eine nettes Webinterface, das ist aber ein anderes Thema.