SVN mit Trac auf einem Debian-Linux

Hier eine kleine Installationsanleitung für Trac und SVN-Services auf einem Linux Debian stable.

Wir erstellen einen Mandantenfähigen SVN-Server mit Trac als Webfrontend für verschiedene Projekte. Installation erfolgt auf Basis eines neuinstallierten Debian Linux Basis Systems.

Apache installation:

apt-get -y install apache2-mpm-worker apache2-utils

 

Trac installation:

apt-get -y install trac libapache2-mod-python
mkdir -p /var/lib/trac
chown www-data:www-data /var/lib/trac

 

Trac Zugriff über den Apache:
/etc/apache2/sites-available/default <- Oder erstellt eine eigene Datei für Trac
Folgendes hinzufügen:

<Location /> #set up Trac handling
SetHandler mod_python
PythonHandler trac.web.modpython_frontend
PythonOption TracEnvParentDir /var/lib/trac
PythonOption TracUriRoot /
</Location>

 

SVN installation:

Der SVN-Server kam schon bei der Trac Installation mit drauf. Fehlt nur noch das SVN-Apache Modul.

apt-get -y install libapache2-svn subversion

/etc/apache2/sites-available/default

<Location /repos>
DAV svn
SVNListParentPath on
SVNParentPath /var/lib/svn/
</Location>

 

Neues Projekt erstellen und Authentifizierung einrichten:

In diesem Beispiel legen wir ein Projekt "Android" an!

Todo für SVN:


mkdir -p /var/lib/svn/Android
svnadmin create /var/lib/svn/Android
# Es kann auch schon eine entsprechende Struktur angelegt werden:
# svn mkdir file:///var/lib/svn/Android/branches file:///var/lib/svn/Android/tags file:///var/lib/svn/Android/trunk -m "initial structure"
chown -R www-data /var/lib/svn/Android

Todo für Trac:

trac-admin /var/lib/trac/Android initenv
# Das vorige Kommando stellt ein paar Basisfragen, lasst sie wie sie sind.
# Nur die Frage, so das SVN-Repository liegt, beantworten wir mit: /var/lib/svn/Android
chown -R www-data:www-data /var/lib/trac/Android


Todo für die Authentifizierung:

htpasswd -c /var/lib/trac/Android/.htpasswd admin
enter new password:
...
  • Trac Auth:
    <Location /Android>
    AuthType Basic
    AuthName "Android - Trac"
    AuthUserFile /var/lib/trac/Android/.htpasswd
    Require valid-user
    </Location>
  • SVN Auth:
    <Location /repos/Android>
    AuthType Basic
    AuthName "Android Subversion Repository"
    AuthUserFile /var/lib/trac/Android/.htpasswd
    Require valid-user
    </Location>

 

Apache neu starten:

/etc/init.d/apache2 restart

Zu erreichen ist Trac jetzt unter dem Domainnamen, der natürlich vorher registriert sein muss oder der IP des Servers - z.B. http://svn.example.org

Das SVN-Repository erreicht ihr unter http://svn.example.org/repos

Neuen Kommentar hinzufügen

Sie können einen Kommentar abgeben, indem Sie das unten stehende Formular ausfüllen. Nur Text. Web- und E-Mail-Adressen werden in anklickbare Links umgewandelt.