Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
gitolite [Le 12/06/2010, 17:06]
82.244.186.241
gitolite [Le 31/08/2022, 23:30] (Version actuelle)
moths-art Passage de http à https sur les liens externes (détecté et corrigé via le bot wiki-corrector (https://forum.ubuntu-fr.org/viewtopic.php?id=2067892)
Ligne 30: Ligne 30:
 Cette commande a pour effet d'​ajouter votre clé au fichier ''​~/​.ssh/​authorized_keys''​ de **''​git''​**. Cette commande a pour effet d'​ajouter votre clé au fichier ''​~/​.ssh/​authorized_keys''​ de **''​git''​**.
  
-Gitolite ​nécéssite ​évidement Git. Si ce n'est pas fait, [[:​tutoriel:​comment_installer_un_paquet|installez donc le paquet]] [[apt://git-core|git-core]].+Gitolite ​nécessite ​évidement Git. Si ce n'est pas fait, [[:​tutoriel:​comment_installer_un_paquet|installez donc le paquet]] [[apt>git-core|git-core]].
 ===== Installation ===== ===== Installation =====
  
Ligne 37: Ligne 37:
 Récupérez les sources de Gitolite sur Github, avec : Récupérez les sources de Gitolite sur Github, avec :
  
-  git clone git://​github.com/​sitaramc/​gitolite.git+  git clone https://​github.com/​sitaramc/​gitolite.git
  
 Déplacez-vous dans le dossier des sources : Déplacez-vous dans le dossier des sources :
Ligne 46: Ligne 46:
  
   src/​gl-easy-install git localhost admin   src/​gl-easy-install git localhost admin
 +   
 +<note important>​La commande précédente n'est plus bonne avec la version actuelle du répertoire github. Les changements semble d'​ailleurs assez important il n'est plus sur que cette page ne soit pas obsolète !</​note>​
 Cela signifie que vous lancez l'​installation en utilisant **''​git''​** comme utilisateur contenant les dépôts Git, sur votre serveur (ici la machine sur laquelle vous êtes connectée, donc ''​localhost''​ représente **''​server''​**) et utilisez **''​admin''​** comme administrateur des dépôts. Cela signifie que vous lancez l'​installation en utilisant **''​git''​** comme utilisateur contenant les dépôts Git, sur votre serveur (ici la machine sur laquelle vous êtes connectée, donc ''​localhost''​ représente **''​server''​**) et utilisez **''​admin''​** comme administrateur des dépôts.
  
Ligne 53: Ligne 54:
 ===== Configuration ===== ===== Configuration =====
  
-La configuration de Gitolite est simple. ​Elle crée un dépôt de configuration nommé ''​gitolite-admin''​ sur le serveur, ​et son clône dans le répertoire personnel de **''​admin''​**. C'est dans celui-ci que nous configurerons nos dépôts. ​cette configuration comprend un fichier et un dossier :+La configuration de Gitolite est simple. ​Un dépôt de configuration nommé ''​gitolite-admin'' ​est créé ​sur le serveur, ​ainsi que son clône dans le répertoire personnel de **''​admin''​**. C'est dans celui-ci que nous configurerons nos dépôts. ​Cette configuration comprend un fichier et un dossier :
  
   * **''​conf/​gitolite.conf''​** : fichier de configuration de Gitolite, contenant les dépôts, leurs utilisateurs/​groupes et leurs droits associés ;   * **''​conf/​gitolite.conf''​** : fichier de configuration de Gitolite, contenant les dépôts, leurs utilisateurs/​groupes et leurs droits associés ;
Ligne 82: Ligne 83:
 </​code>​ </​code>​
  
-Une fois votre fichier édité, ​sauvegardé ​puis //​commitez//​ les changements :+Une fois votre fichier édité, ​sauvegardez ​puis //​commitez//​ les changements :
  
   git add conf/​gitolite.conf   git add conf/​gitolite.conf
Ligne 94: Ligne 95:
 Pour ajouter un utilisateur,​ il suffit d'​ajouter sa clé publique au dossier ''​keydir/''​ dans un fichier nommé ''​username.pub''​. Pour ajouter un utilisateur,​ il suffit d'​ajouter sa clé publique au dossier ''​keydir/''​ dans un fichier nommé ''​username.pub''​.
  
-Pour ajouter par exemple l'​utilisateur ''​user1'',​ [[:​tutoriel:​comment_editer_un_fichier|crééz ​le fichier]] ''​keydir/​user1.pub''​ contenant sa clé publique.+Pour ajouter par exemple l'​utilisateur ''​user1'',​ [[:​tutoriel:​comment_editer_un_fichier|créez ​le fichier]] ''​keydir/​user1.pub''​ contenant sa clé publique.
  
 <​note>​ <​note>​
-Cette clé publique est habituellement créée avec la commande ''​ssh-keygen''​ (executée ​depuis le poste de l'​utilisateur à ajouter) et est contenue dans le fichier ''​~/​.ssh/​id_rsa.pub''​ de l'​utilisateur.+Cette clé publique est habituellement créée avec la commande ''​ssh-keygen''​ (exécutée ​depuis le poste de l'​utilisateur à ajouter) et est contenue dans le fichier ''​~/​.ssh/​id_rsa.pub''​ de l'​utilisateur.
 </​note>​ </​note>​
  
Ligne 143: Ligne 144:
   * **R** : droit de lecture uniquement (l'​utilisateur peut effectuer un ''​git clone'',​ etc) ;   * **R** : droit de lecture uniquement (l'​utilisateur peut effectuer un ''​git clone'',​ etc) ;
   * **RW** : droit de lecture et écriture (l'​utilisateur peut effectuer un ''​git clone'',​ ''​git push'',​ etc) ;   * **RW** : droit de lecture et écriture (l'​utilisateur peut effectuer un ''​git clone'',​ ''​git push'',​ etc) ;
-  * **RW+** : droit de lecture et écriture, ainsi que les //rewind permissions//,​ c'​est-à-dire le droit de supprimer des étapes du projet, comme par exemple ​le permet ​la commande ''​git reset --hard HEAD^''​.+  * **RW+** : droit de lecture et écriture, ainsi que les //rewind permissions//,​ c'​est-à-dire le droit de supprimer des étapes du projet, comme par exemple ​permettre ​la commande ''​git reset --hard HEAD^''​.
  
 <note help> <note help>
-Pour une configuration plus poussée, comme les permissions sur les branches, Gitweb, etc, voir l'​exemple de [[http://​github.com/​sitaramc/​gitolite/​blob/​master/​conf/​example.conf|fichier de configuration]] de Gitolite.+Pour une configuration plus poussée, comme les permissions sur les branches, Gitweb, etc, voir le [[https://​github.com/​sitaramc/​gitolite/​blob/​master/​README.txt|README]] de Gitolite.
 </​note>​ </​note>​
  
Ligne 180: Ligne 181:
 ==== Changer le masque des dépôts ==== ==== Changer le masque des dépôts ====
  
-Il peut être utile de changer le masque des dépôts, c'est à dire attribuer des droits différents aux nouveaux dépôts. Par exemple, //Gitweb// ou [[:​redmine|Redmine]] ont besoin de lire les dépôts pour les parcourir. Souvent, la plus propre méthode consistera à ajouter leur utilisateur au groupe //git// et ajouter le droit de lecture à ce groupe.+Il peut être utile de changer le masque des dépôts, c'est-à-dire attribuer des droits différents aux nouveaux dépôts. Par exemple, //Gitweb// ou [[:​redmine|Redmine]] ont besoin de lire les dépôts pour les parcourir. Souvent, la plus propre méthode consistera à ajouter leur utilisateur au groupe //git// et ajouter le droit de lecture à ce groupe.
  
 [[:​tutoriel:​comment_editer_un_fichier|Éditez le fichier]] **''/​home/​git/​.gitolite.rc''​** (sur **''​server''​**) pour y changer la valeur de la variable ''​REPO_UMASK''​ comme ceci (commentez la valeur actuelle et décommentez celle voulue) : [[:​tutoriel:​comment_editer_un_fichier|Éditez le fichier]] **''/​home/​git/​.gitolite.rc''​** (sur **''​server''​**) pour y changer la valeur de la variable ''​REPO_UMASK''​ comme ceci (commentez la valeur actuelle et décommentez celle voulue) :
Ligne 188: Ligne 189:
 Ce n'est pas tout. Cette modification affectera les nouveaux dépôts créés, pas ceux déjà existants. Pour attribuer les bonnes permissions sur un dépôt existant, procédez comme ceci (dans le cas ou nous voulons attribuer le droit de lecture au groupe) : Ce n'est pas tout. Cette modification affectera les nouveaux dépôts créés, pas ceux déjà existants. Pour attribuer les bonnes permissions sur un dépôt existant, procédez comme ceci (dans le cas ou nous voulons attribuer le droit de lecture au groupe) :
  
-  sudo chmod g+Xr /​home/​git/​repositories/<​mon_depot>​.git/​+  sudo chmod -R g+Xr /​home/​git/​repositories/<​mon_depot>​.git/​
  
 <note important>​ <note important>​
-Notez le **''X''** et non pas ''​x'​', qui aura pour effet d'​attribuer le droit d'​exécution seulement sur un dossier, ou sur un fichier si celui-ci est déjà exécutable (par le propritaire ​par exemple).+Notez le **'​X'​** et non pas **'​x'​**, qui aura pour effet d'​attribuer le droit d'​exécution seulement sur un dossier, ou sur un fichier si celui-ci est déjà exécutable (par le propriétaire ​par exemple).
 </​note>​ </​note>​
  
Ligne 200: Ligne 201:
 === Par un utilisateur === === Par un utilisateur ===
  
-Après avoir ajouter ​un utilisateur,​ celui-ci peut //cloner// un dépôt avec :+Après avoir ajouté ​un utilisateur,​ celui-ci peut //cloner// un dépôt avec :
  
   git clone git@server:​my_repo   git clone git@server:​my_repo
Ligne 226: Ligne 227:
   git push origin master   git push origin master
   git config push.default matching   git config push.default matching
-</​note>​===== Désinstallation =====+</​note>​ 
 + 
 +===== Désinstallation =====
  
 Pour désinstaller Gitolite, il faut supprimer des fichiers de **''​server''​** et **''​admin''​**. Pour désinstaller Gitolite, il faut supprimer des fichiers de **''​server''​** et **''​admin''​**.
Ligne 241: Ligne 244:
   * ''​~/​repositories/​gitolite-admin.git''​   * ''​~/​repositories/​gitolite-admin.git''​
  
-Il vaut reste plus qu'à supprimer les accès SSH des utilisateurs sur **''​server''​** :+Il ne reste plus qu'à supprimer les accès SSH des utilisateurs sur **''​server''​** :
  
 dans le fichiers ''​~/​.ssh/​authorized_keys''​ de l'​utilisateur **''​git''​**,​ supprimez les clés des utilisateurs,​ ou supprimez la partie ''"​command=..."''​. dans le fichiers ''​~/​.ssh/​authorized_keys''​ de l'​utilisateur **''​git''​**,​ supprimez les clés des utilisateurs,​ ou supprimez la partie ''"​command=..."''​.
Ligne 247: Ligne 250:
 ===== Voir aussi ===== ===== Voir aussi =====
  
-  * **(en)** [[http://​github.com/​sitaramc/​gitolite|page de Gitolite]] sur Github ​+  * **(en)** [[https://​github.com/​sitaramc/​gitolite|page de Gitolite]] sur Github ;
-  * **(en)** [[http://​github.com/​sitaramc/​gitolite/​blob/​master/​conf/​example.conf|Un exemple de fichier de configuration complet]] ​;+
   * **(fr)** documentation de [[:​git|Git]] du wiki ;   * **(fr)** documentation de [[:​git|Git]] du wiki ;
  
  • gitolite.1276355203.txt.gz
  • Dernière modification: Le 12/06/2010, 17:06
  • par 82.244.186.241