Git » Historique » Version 2
Antoine Lubineau, 21/02/2012 19:38
1 | 1 | Antoine Lubineau | h1. Installation et utilisation dâun serveur Git |
---|---|---|---|
2 | 1 | Antoine Lubineau | |
3 | 1 | Antoine Lubineau | Les explications qui suivent ont été appliquées sur le serveur @git.tetaneutral.net@ de Tetaneutral.net, donc avec une Debian Squeeze. |
4 | 1 | Antoine Lubineau | |
5 | 2 | Antoine Lubineau | "Git":http://git-scm.com/ est un gestionnaire de versions décentralisé, libre et développé en C. à noter la traduction française du "Git community book":http://www.alexgirard.com/git-book/index.html. |
6 | 1 | Antoine Lubineau | |
7 | 2 | Antoine Lubineau | La configuration se fera essentiellement au travers de "Gitolite":https://github.com/sitaramc/gitolite, qui permet de créer des dépôts, gérer les accès push/pull pour des accès en SSH, déléguer des droits, etc. @git-daemon@ permet de donner un accès au travers du protocole @git@, et @cgit@ sera utilisé pour lâinterface web. |
8 | 1 | Antoine Lubineau | |
9 | 2 | Antoine Lubineau | h2. "Gitolite":https://github.com/sitaramc/gitolite |
10 | 1 | Antoine Lubineau | |
11 | 1 | Antoine Lubineau | h2. git-daemon |
12 | 1 | Antoine Lubineau | |
13 | 2 | Antoine Lubineau | h3. "cgit":http://hjemli.net/git/cgit/ |
14 | 2 | Antoine Lubineau | |
15 | 2 | Antoine Lubineau | Comme il nây a pas de paquet Debian, il faut le compiler à la main. Au moment de la rédaction de ce guide, on ne pouvait pas compiler cgit contre la dernière version de Git (fonctionnel avec cgit 0.9.2.0 et Git 1.7.4). |
16 | 2 | Antoine Lubineau | <pre> |
17 | 2 | Antoine Lubineau | wget |
18 | 2 | Antoine Lubineau | </pre> |
19 | 2 | Antoine Lubineau | |
20 | 2 | Antoine Lubineau | Avec les sources de Git 1.7.4, en spécifiant @CGIT_SCRIPT_PATH = /var/www@ et @prefix = /usr/local/cgit@ dans le @Makefile@. |
21 | 2 | Antoine Lubineau | |
22 | 2 | Antoine Lubineau | Pour que le serveur web ait les droits de lecture sur les dépôts, il faut ajouter www-data au groupe @git@, faire un @chmod -R g+rX@ sur les dépôts existants, et changer @$REPO_UMASK = 0077;@ en @$REPO_UMASK = 0027;@ dans @~git/.gitolite.rc@ (ce réglage ne vaut que pour les dépôts qui seront créés par la suite). |
23 | 2 | Antoine Lubineau | |
24 | 2 | Antoine Lubineau | cgit récupère la liste des projets dans @~git/projects.list@. Cette liste est complétée par Gitolite pour les dépôts dont @gitweb@ a les droits en lecture (câest une dénomination spécifique à gitolite, qui nâest pas incluse dans @@all@). Je ne suis pas tout à fait sûr par contre que le fichier @projects.list@ ait les bons droit lorsquâil est régénéré par gitolite. |
25 | 2 | Antoine Lubineau | |
26 | 2 | Antoine Lubineau | La configuration de @cgit@ se trouve dans @cgitrc(5)@ : |
27 | 2 | Antoine Lubineau | <pre> |
28 | 2 | Antoine Lubineau | virtual-root=/ |
29 | 2 | Antoine Lubineau | project-list=/home/git/projects.list |
30 | 2 | Antoine Lubineau | scan-path=/home/git/repositories/ |
31 | 2 | Antoine Lubineau | </pre> |
32 | 2 | Antoine Lubineau | |
33 | 2 | Antoine Lubineau | Pour spécifier le propriétaire et la description dâun dépôt, voir le "manuel de gitolite":http://sitaramc.github.com/gitolite/confother_.html, section «â¯specifying gitweb and daemon accessâ¯Â». |