logiciel:linux
Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédenteProchaine révisionLes deux révisions suivantes | ||
logiciel:linux [2011-05-16 18:25] – [Mercurial] lokbani | logiciel:linux [2011-05-16 20:10] – [Mercurial] lokbani | ||
---|---|---|---|
Ligne 373: | Ligne 373: | ||
== Ajouter un utilisateur == | == Ajouter un utilisateur == | ||
- | Demander à l' | + | Demander à l' |
< | < | ||
Ligne 415: | Ligne 415: | ||
* user=glob: chemin (à partir de keys) menant à une ou plusieurs clés | * user=glob: chemin (à partir de keys) menant à une ou plusieurs clés | ||
- | Les expressions glob pour les chemins utilisent * pour représenter un ou plusieurs caractères excluant le /, et ** pour représenter un ou plusieurs caractères incluant le /. Donc, par exemple, repo=labs/* attrape les dépôts labs/aaaa et labs/bbbb mais pas labs/ | + | Les expressions glob pour les chemins utilisent * pour représenter un ou plusieurs caractères excluant le /, et %%**%% pour représenter un ou plusieurs caractères incluant le /. Donc, par exemple, repo=labs/* attrape les dépôts labs/aaaa et labs/bbbb mais pas labs/ |
Par exemple, les trois règles pour les groupes prédéfinis sont | Par exemple, les trois règles pour les groupes prédéfinis sont | ||
Ligne 444: | Ligne 444: | ||
==== Git ==== | ==== Git ==== | ||
- | - [[http:// | + | Le logiciel |
+ | |||
+ | Au cours de ce document, **$lab** doit être substitué par le nom du laboratoire et **$gitadmin** par le nom de l' | ||
+ | |||
+ | === Préparation === | ||
+ | |||
+ | == Clé ssh pour l' | ||
+ | |||
+ | Faire parvenir votre clé ssh publique pour vous donner l' | ||
+ | |||
+ | < | ||
+ | |||
+ | et faite retour de chariot aussi souvent que nécessaire pour accepter toute les réponses par défaut. Ensuite, envoyez le fichier .ssh/ | ||
+ | |||
+ | == Récupération du répertoire des fichiers de configurations == | ||
+ | |||
+ | Dans un terminal, utilisez la commande | ||
+ | |||
+ | < | ||
+ | |||
+ | pour importer une copie de travail du répertoire des fichiers de gestion. Le répertoire a cette structure: | ||
+ | |||
+ | |||
+ | * conf/ | ||
+ | * keydir/: répertoire contenant les clés ssh publiques des utilisateurs. | ||
+ | |||
+ | |||
+ | |||
+ | === Gestion === | ||
+ | |||
+ | == Ajouter un utilisateur == | ||
+ | |||
+ | Demander à l' | ||
+ | |||
+ | < | ||
+ | git add keydir | ||
+ | git commit -m "ajout usager $usager" | ||
+ | git push origin master | ||
+ | </ | ||
+ | |||
+ | == Le fichier conf/ | ||
+ | |||
+ | La description complète du fichier conf/ | ||
+ | |||
+ | **Attention: | ||
+ | |||
+ | < | ||
+ | git add conf/ | ||
+ | git commit -m " | ||
+ | git push origin master | ||
+ | </ | ||
+ | |||
+ | == Gestion des groupes d' | ||
+ | |||
+ | Ajouter, dand le fichier conf/ | ||
+ | |||
+ | < | ||
+ | @groupe1 = $usager1 $usager2 ... | ||
+ | </ | ||
+ | |||
+ | == Gestion des règles d' | ||
+ | |||
+ | Pour chaque dépôt, il doit exister dans le conf/ | ||
+ | |||
+ | < | ||
+ | repo $nom_repo | ||
+ | RW+= @admin | ||
+ | RW = @contrib $usager5 ... | ||
+ | R = @all | ||
+ | </ | ||
+ | |||
+ | où les permissions sont R (read), W (write) et + (rewind, i.e. non-fast forward push). Le groupe @all est un groupe spécial qui inclut automatiquement tous les usagers dont la clé est valide. On peut donner des permissions spécifiques à une branches en la nommant, i.e. RW branch$ = @groupe.. | ||
+ | |||
+ | Lors du push, tous les dépôts nommés dans le fichier seront créés s'ils n' | ||
+ | |||
+ | === Utilisation === | ||
+ | |||
+ | == Clonage d'un dépôt == | ||
+ | |||
+ | < | ||
+ | |||
===== Logiciels disponibles au DIRO ===== | ===== Logiciels disponibles au DIRO ===== |
logiciel/linux.txt · Dernière modification : 2020-01-08 21:42 de royjuli