cgit
cgit est une interface web pour les dépôts git
Pré-requis
- Disposer des droits d'administration.
- Disposer d'une connexion à Internet configurée et activée.
- Avoir déjà installé et configuré apache2.
Installation
Pour installer ce logiciel, il suffit d'installer les paquets cgit.
Configuration
Configurons maintenant apache pour qu'il prenne en considération cgit :
cat <<'EOF' | sudo tee /etc/apache2/sites-available/cgit.conf Alias /git /var/www/htdocs/cgit/cgi-bin <Directory /var/www/htdocs/cgit/cgi-bin> Options FollowSymLinks +ExecCGI AddHandler cgi-script .cgi DirectoryIndex cgit.cgi RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^.* /git/cgit.cgi/$0 [L,PT] </Directory> EOF
Si ce n'est pas déjà fait, activez mod_rewrite :
sudo a2enmod rewrite
Redémarrez apache :
sudo service apache2 restart
Nous considérons à partir d'ici que tous vos dépôts git sont stockés dans le dossier /home/git/.
Si /home/git/ n'existe pas :
sudo mkdir /home/git/
Nous allons maintenant configurer cgit pour qu'il prenne en compte vos dépôts git ainsi que l'emplacement des images et des css.
cat <<'EOF' | sudo tee /etc/cgitrc logo=/cgit/cgit.png css=/cgit/cgit.css scan-path=/home/git enable-index-links=1 virtual-root=/git/ EOF
Utilisation
C'est terminé, vous pouvez vérifier que votre interface web fonctionne :
xdg-open http://localhost/git
Si certains dépôts git ne se trouvent pas dans le dossier /home/git/, vous pouvez les y ajouter virtuellement à l'aide cette commande :
sudo ln -s /emplacement/de/votre/application/myapp /home/git/myapp
Ou bien:
sudo ln -s /emplacement/de/votre/application/myapp/.git /home/git/myapp
Les deux reviennent au même.
Désinstallation
Pour supprimer cette application, il suffit de supprimer son paquet. Selon la méthode choisie, la configuration globale de l'application est conservée ou supprimée. Les journaux du système, et les fichiers de préférence des utilisateurs dans leurs dossiers personnels sont toujours conservés.