Documentation

Mercurial : configurer hgweb

Ce tutoriel a pour but d'expliquer une méthode pour "activer" et configurer hgweb pour un dépôt mercurial.

Tout au long de ce tutoriel, il vous faudra remplacer chaque occurrence de <user> par votre nom d'utilisateur.

Adresse pour les dépôts mercurial

Créer un site de type Apache, ayant pour répertoire /hg.

Créer un dépôt hg

Connectez-vous en SSH, puis créez le répertoire qui contiendra tous les dépôts hg :

mkdir hg

Créez un dépôt Mercurial :

cd hg

hg init first_repo

Configuration hgweb

Dans le répertoire /hg créé, placez ce fichier hgwebdir.fcgi :

#!/usr/bin/env python
import cgitb
from mercurial.hgweb.hgwebdir_mod import hgwebdir
from mercurial.hgweb.request import wsgiapplication
from flup.server.fcgi import WSGIServer
cgitb.enable()
def make_web_app(): return hgwebdir("hgweb.config")
WSGIServer(wsgiapplication(make_web_app)).run()

Ce fichier doit être exécutable :

chmod u+x hgwebdir.fcgi

Créez également ce fichier .htaccess :

AddHandler fcgid-script .fcgi*
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ hgwebdir.fcgi/$1 [QSA,L]

Enfin, il faut activer et configurer le dépôt que nous venons de créer, grâce au fichier hgweb.config :

[web]
baseurl =
[paths]
first_repo = /home/<user>/hg/first_repo
// rajoutez une ligne pour chaque dépôt

Limiter l'accès

Si vous souhaitez protéger l'accès par la saisie d'un identifiant et son mot de passe, vous pouvez le faire grâce au fichier .htaccess.


Last updated: 08 Oct. 2013 at 10:47