Configure git service

A local running git service additional to the common used access to git repositories via ssh or https is desribed here.

Configuration git repo via webdav (apache2)

Configuration git-web (apache2)

Installation of gitweb:

~# apt-get install gitweb

Add a apache available sites file for gitweb which points to certain gitweb ressources.

~# vi /etc/apache2/sites-available/gitweb.conf
...
Listen 82
<VirtualHost *:82>
        DocumentRoot /usr/share/gitweb
        Options +ExecCGI
        SetEnv GITWEB_CONFIG /etc/gitweb.conf
        Alias static/gitweb.css /usr/share/gitweb/static/gitweb.css
        Alias static/gitweb.js /usr/share/gitweb/static/gitweb.js
        Alias static/git-favicon.png /static/git-favicon.png
        Alias static/git-logo.png /static/git-logo.png
        ScriptAlias /gitweb.cgi /usr/lib/cgi-bin/gitweb.cgi
        DirectoryIndex gitweb.cgi
</VirtualHost>

After that enable the site. Furthermore the apache module cgi must be enabled to engage gitweb. Afterall a restart of apache is necessary.

~# a2ensite gitweb
~# a2enmod cgi
~# service apache2 restart

It is listening on http://localhost:82 http://dereenigne.org/debian/debian-gitweb-server

Configuration git daemon

Installation of the git service:

~# apt-get install git-daemon-run

The git-daemon is part of the git package, but git-daemon-run installs it in the init system as a respawning process by the help of the daemon-tools.

The configuration is stored in /etc/sv/git-daemon/run.

The base path directory of the service is /var/lib/git, so connect to a git repository like git://localhost:9418/<git-project> if your git repository resides in /var/lib/git/<git-project>.

Note: The git-daemon is not able to authenticate users, also push is possible for everyone.

Configuration trac-git connector

Open the trac.ini in the trac project directory /var/lib/trac/robowheel/conf/ and edit

...
[components]
tracopt.versioncontrol.git.* = enabled
....
[trac]
repository_dir = /var/lib/git/robowheel.git
repository_type = git
...

Trac is accessible by http://localhost:8000/robowheel

Reference: http://trac.edgewall.org/wiki/TracGit