Ceci est une ancienne révision du document !
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 installé le paquet git-core.
- Avoir déjà installé et configuré apache2.
Installation
Ouvrez un terminal et placez-vous dans votre répertoire home :
cd ~
Téléchargez la dernière version de cgit sur http://hjemli.net/git/cgit/. Par exemple, si la dernière version est la version 0.8.3.3, téléchargez l'archive cgit-0.8.3.3.tar.gz :
wget http://hjemli.net/git/cgit/snapshot/cgit-0.8.3.3.tar.gz
Décompressez l'archive :
tar -zxvf cgit-0.8.3.3.tar.gz
Placez-vous dans le nouveau dossier qui vient d'être créé :
cd cgit-0.8.3.3
Contruisons maintenant cgit :
make get-git make
Avant d'installer cgit, nous allons devoir créer un fichier de configuration pour demander à l'installateur de placer les fichiers cgit dans des endroits appropriés :
cat <<'EOF' > cgit.conf CGIT_SCRIPT_PATH = /var/www/htdocs/cgit/cgi-bin CGIT_DATA_PATH = /var/www/htdocs/cgit EOF
Installez cgit :
sudo make install
Trois fichiers viennent d'être installés :
- /var/www/htdocs/cgit/cgit.css
- /var/www/htdocs/cgit/cgit.png
- /var/www/htdocs/cgit/cgi-bin/cgit.cgi
Configuration
Configurons maintenant apache pour qu'il prenne en considération cgit :
cat <<'EOF' | sudo tee /etc/apache2/conf.d/cgit 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 /etc/init.d/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 désinstaller cgit :
cd ~/cgit-0.8.3.3 sudo make uninstall sudo rmdir /var/www/htdocs/cgit/cgi-bin sudo rmdir /var/www/htdocs/cgit sudo rm /etc/cgitrc /etc/apache2/conf.d/cgit