Présentation
gitweb est l’outil de base proposé par le projet Git pour accéder à ses dépôts via une interface Web.
Installation
Sous Ubuntu, gitweb est disponible dans le paquet du même nom. Il suffit donc de tapez ceci en console :
sudo apt install gitweb
Voilà, c’est installé ! Votre dépôt est accessible sur le serveur via l’Alias /gitweb.
Configuration
Évidemment tout est configuré de base pour des points dossiers clés d’Ubuntu. Mais nous pouvons changer cela, simplement en modifiant le fichier /etc/gitweb.conf et en modifiant les lignes suivantes :
$projectroot = "/srv/git";
/srv/git est le dossier dans lequel se trouve les dépôts GIT dits “bare”.
Vous pouvez ajouter la ligne suivante pour donner un titre à votre page Web d’accès aux dépôts :
$site_name = "Mes dépôts GIT";
Par défaut des dépôts vides dits “bare” ne possèdent ni description, ni possesseur. Il apparaît donc sur l’interface quelque chose de pas très joli comme : “Unnamed repository; edit this…” et “root” ou même “www-data”.
Pour éviter cela, éditez les fichiers suivants contenus dans le dépôt dit “bare” : description et config.
Fichier description :
Description de mon dépôt GIT
Fichier config (lignes à AJOUTER) :
[gitweb]
owner = "Prénom NOM"
Reconnaissance syntaxique
- Installer highlight :
apt-get install highlight
- Ajouter la ligne suivante dans /etc/gitweb.conf :
$feature{'highlight'}{'default'} = [1];
Cela fonctionne 😉
Gitolite
Gitolite est un outil de gestion des dépôts git à l’aide d’un utilisateur unique sur une machine.
Nous considérons que l’utilisateur qui possède la gestion des dépôts se nomme git et que l’utilisateur qui s’occupe de l’accès web (pour gitweb) se nomme www-data.
Ce qu’il faut savoir :
- Dans le fichier ~/.gitolite.rc de l’utilisateur git, il faut vérifier les permissions de la ligne suivante (afin que votre dépôt ne disparaisse pas de gitweb quand vous faites un git push) :
$REPO_UMASK = 0027;
- La gestion des permissions de gitweb sous gitolite est décrite dans la documentation de gitolite sur github
- Il faut indiquer à gitweb le dépôt gitolite, par exemple :
/home/git/repositories
- Dans la configuration de gitolite, dans le dépôt gitolite-admin.git, n’oubliez pas la description des dépôts et leur auteur, par exemple :
repo simple-url-shortener
RW+ = olivier
simple-url-shortener "Olivier DOSSMANN" = "Générateur d'adresses courtes [php/sqlite]"