Table des matières
Git : Usage des dépots de Mycélium
Liste des dépots Git
Nos dépots Git sont hébergés sur mplx, il y en a plusieurs :
Nom du dépot | Utilisateur | Visibilité | Contenu |
---|---|---|---|
mycelium-public | mycelium | public | sensibilisation |
mycelium | mycelium | sera public | scritps d'administration, playbooks ansible |
mycelium-pass | mycelium | privé | le password-store lié à notre clé GPG de l'email contact |
mycelium-treso | mycelium | privé | le fichier de comptes non-anonymisé pour notre trésorerie |
Accès aux dépots (en résumé)
Nom du dépot | Commande |
---|---|
mycelium-public | git clone git://mplx.ml/~mycelium/mycelium-public.git |
mycelium | git clone mycelium@mplgit:mycelium.git |
mycelium-pass | git clone mycelium@mplgit:mycelium-pass.git |
mycelium-treso | git clone mycelium@mplgit:mycelium-treso.git |
Note : Les dépots privés ne sont accessibles que si vous avez transmis votre clé (publique) SSH.
Accès public
L'accès public n'est possible qu'en lecture, pas en écriture.
La commande pour cloner un dépot public est la suivante :
git clone git://mplx.ml/~utilisateur/nom_du_depot.git
Pour le dépot public de Mycélium, il s'agira donc de :
git clone git://mplx.ml/~mycelium/mycelium-public.git
Accès authentifié
L'accès authentifié (privé) permet un accès en lecture et écriture aux dépots.
Envoie ta clé SSH dedieu
D'abord, vous devez m'envoyer (à cacatoès) votre clé publique SSH (si par email, en pièce jointe de préférence pour éviter les soucis liés à mime/encodage).
Attendre la confirmation que votre clé a été ajoutée. Vous pourrez accéder aux dépots Git via l'un des comptes utilisateur de Mycélium (voir Liste des dépots)
Connexion SSH (avec ProxyJump)
Suivez les instructions décrites dans mplx : accès SSH
Vérifier l'authentification
Après avoir mis en place le fichier de config ssh :
$ ssh mycelium@mplgit
Vous n'obtiendrez pas de shell, mais cela vous permettra de valider l'empreinte SSH de mplgit et de vérifier que votre clé SSH est acceptée par le serveur.
Erreurs diverses
RSA host key for mplserv has changed and you have requested strict checking.
Ce problème est lié à ssh (et non pas à git). Il signifie que l'empreinte SSH du serveur a changé, ce qui pose la question de son authenticité, et vous devez vous enquérir du pourquoi : réinstallation du serveur, changement de la configuration réseau qui fait parvenir sur un autre serveur SSH…
A moins que vous ne connaissiez la raison de ce changement, vous devriez contacter l'administrateurice du serveur.
Un peu de debug possible avec :
ssh -vvv mycelium@mplgit
Usage basique de git
Étapes initiales
Récupérer le contenu du dépot :
$ git clone mycelium@mplgit:mycelium.git
Après un premier clonage, il est préférable de configurer les informations personnelles.
$ git config --local --add user.name "<Prénom> <Nom>" $ git config --local --add user.email "<email>"
Récupérer une version récente des fichiers du dépot
$ git pull
Consulter le journal d'activité
$ git log
Ajouter un fichier ou répertoire
$ git add file $ git add directory
Commiter des changements (il faut ajouter les fichiers avant)
$ git commit -m "Mon super commentaire explicite"
Envoyer le commit sur le dépôt centralisé
$ git push
Aller plus loin
Une documentation sympa pour creuser l'usage de Git : https://www.miximum.fr/blog/enfin-comprendre-git/
Organisation du contenu des dépots
Le répertoire 'keys'
Le répertoire keys
à la racine du dépôt GIT de mycélium stocke les clés publiques SSH des administeurs Mycélium.
Le format du fichier de la clé doit être : <username>.pub
.
Préférer les clés RSA (2048 ou supérieur) ou EC25519. (éviter les clés DSA et ECDSA)
Envoyer sa clé publique ssh dedans :
git pull git add keys/<username>.pub git commit -m "Add ssh public key for <username>" git push