git
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 | ||
git [2016/03/24 12:43] – [Liste des dépôts] cecile | git [2017/01/29 13:21] – capslock | ||
---|---|---|---|
Ligne 3: | Ligne 3: | ||
===== Qu' | ===== Qu' | ||
- | À écrire. Notions | + | Git est un programme informatique permettant de garder un historique de différentes versions d'un fichier ou d'un dossier. |
+ | |||
+ | Avec Git, vous pouvez donc remonter dans le temps et retrouver un document dans un état précédent. | ||
+ | |||
+ | Git est un programme que vous installez sur votre machine. Il est possible | ||
+ | |||
+ | Quand vous versionnez un dossier, celui-ci devient un "dépôt | ||
+ | |||
+ | Plusieurs utilisateurs peuvent utiliser le même serveur Git. Il est possible de travailler en même temps que quelqu' | ||
+ | |||
+ | Chaque utilisateur d'un dépôt Git dispose d'une copie locale du projet : ainsi, si le serveur tombe, les différents utilisateurs peuvent reconstruire le dépôt distant avec les dernières sauvegardes (" | ||
+ | |||
+ | La communication entre un dépôt Git distant et votre machine peut passer par différents protocoles. Le plus commun est SSH. C'est pour cela qu'il vous faut avoir une paire de clés SSH pour récupérer un dépôt (on parle alors de " | ||
===== L' | ===== L' | ||
Ligne 19: | Ligne 31: | ||
===== Liste des dépôts ===== | ===== Liste des dépôts ===== | ||
- | ^ Nom du dépôt | + | Les dépôts sont gérés par [[gitlab|Gitlab]]. |
- | |membres| Dépôt dédié aux membres et aux documents sur la vie de l' | + | |
- | |graphisme| Dépôt dédié aux documents graphiques : logos, flyer, templates, etc.| Accès libre| | + | |
- | |sdtan| Dépôt dédié au projet sur le SDTAN (schémas directeurs territoriaux d' | + | |
- | |adminsys| Dépôt dédié au groupe de travail adminsys| Accès réservé | | + | |
- | |site-pelican| Dépôt dédié à notre site Internet | + | |
- | |si| Dépôt dédié à notre SI : Coin - Techno : Django| Accès réservé| | + | |
- | **TODO : compléter avec les dépôts | + | Voici les principaux |
- | ===== Comment accéder aux dépôts de FAImaison ? ===== | + | |
- | Reprendre des infos ci-dessous, reformuler version user-friendly. Ajouter quelques noms de logiciels | + | ^ Nom du dépôt |
+ | |membres | ||
+ | |graphisme | ||
+ | |sdtan | ||
+ | |adminsys | ||
+ | |site-pelican | ||
+ | |si | Dépôt dédié à notre SI : Coin - Techno : Django | ||
- | ===== Serveurs git ===== | + | Par ailleurs les groupes Gitlab suivants sont définis : |
- | Voir page [[backup# | + | ^ Nom du dépôt |
+ | |faimaison-adminsys | ||
+ | |faimaison-bureau | ||
+ | |faimaison-membres | ||
+ | |faimaison-public | ||
- | Le service git est accessible via SSH (voir [[# | + | Pour contribuer il vous faut un accès. |
- | * '' | + | |
- | * '' | + | |
+ | ===== Comment accéder aux dépôts de FAImaison ? ===== | ||
- | ^ Machine | + | Rendez-vous sur la page dédiée à [[gitlab|Gitlab]] |
- | | chomsky.autogeree.net | git-slave.faimaison.net | jca+fma@wxcvbn.org | Oui (faimaison-git) | Oui | Oui | | + | |
- | | trompe-souris.faimaison.net| git.faimaison.net | adminsys@faimaison.net | Oui (faimaison-git) | TODO | Oui | | + | |
- | ===== Méthodes d' | + | |
- | Le dépôt | + | ===== Serveurs |
- | * **[[#git-daemon|git-daemon]]** (lecture uniquement) | + | Voir page [[backup#depot git|backups]]. |
- | * **[[# | + | |
- | * **[[# | + | |
- | ==== Utilisation en lecture seule ==== | + | Le service git est accessible via SSH (voir [[# |
- | + | ||
- | Ces méthodes d' | + | |
- | + | ||
- | === git-daemon === | + | |
- | + | ||
- | Il est possible de cloner n' | + | |
- | + | ||
- | git clone git:// | + | |
- | + | ||
- | Pour obtenir la liste des dépôts disponibles, | + | |
- | + | ||
- | === gitweb === | + | |
- | + | ||
- | Accessible sur http:// | + | |
+ | ^ Machine | ||
+ | | riboul.faimaison.net | ||
+ | | chomsky.autogeree.net | git-slave.faimaison.net | Esclave | ||
==== Utilisation en lecture/ | ==== Utilisation en lecture/ | ||
+ | Les dépôts publics | ||
=== Authentification === | === Authentification === | ||
- | Toute l' | + | Les comptes sont gérés |
+ | |||
+ | Pour contribuer, vous avez deux possibilités : | ||
+ | * Utiliser l'interface Web de Gitlab | ||
+ | * Utiliser vos outils, sur votre ordinateur. Dans ce cas, il vous faut une clé SSH pour contribuer (voir ci-dessous) | ||
== Générer sa paire de clés SSH == | == Générer sa paire de clés SSH == | ||
Ligne 91: | Ligne 94: | ||
Ceci a pour but d' | Ceci a pour but d' | ||
- | == Envoyer sa clé publique | + | Dès que vous avez votre paire de clé, il suffit d' |
- | Pour avoir accès au dépôt git, il faut envoyer la clé publique générée ('' | + | == Authentification |
- | Les administrateurs doivent pouvoir vérifier | + | Pour protéger |
- | * soit **en signant votre mail avec GPG**. Çela suppose qu'au moins un des membres | + | |
- | * soit on vient à une réunion avec sa clé publique SSH sur une clé USB. | + | |
- | :!: Si vous envoyez | + | Quand l' |
- | En effet copier/ | + | |
+ | | ||
+ | | ||
+ | | ||
+ | |||
+ | Pour obtenir un code à usage unique, il vous faut une application compatible " | ||
=== Utilisation === | === Utilisation === | ||
- | Fonctionnement : tout se fait en ssh en passant par // | ||
- | ssh -i ~/ | + | == Par l' |
- | on a la liste des dépôts accessibles | + | == Via vos outils Git installés sur votre machine == |
+ | |||
+ | Fonctionnement : tout se fait en ssh. Si on essaie de se connecter directement : | ||
+ | |||
+ | ssh -i ~/.ssh/ | ||
+ | |||
+ | On obtient un message de bienvenue : | ||
+ | |||
+ | PTY allocation request failed on channel 0 | ||
+ | Welcome to GitLab, CapsLock! | ||
+ | Connection to git.faimaison.net closed. | ||
Pour dire à ssh de toujours utiliser cette clé et cet utilisateur (et donc pour simplifier la vie à git), on peut mettre quelque chose du genre dans son fichier '' | Pour dire à ssh de toujours utiliser cette clé et cet utilisateur (et donc pour simplifier la vie à git), on peut mettre quelque chose du genre dans son fichier '' | ||
Ligne 120: | Ligne 135: | ||
Ensuite, il suffit de cloner comme d' | Ensuite, il suffit de cloner comme d' | ||
- | git clone git.faimaison.net: | + | git clone git@gitlab.faimaison.net: |
+ | |||
+ | Pour trouver l' | ||
- | Noter qu'en l' | + | {{ ::depot.png? |
=== Création d'un nouveau dépôt === | === Création d'un nouveau dépôt === | ||
- | Pour créer un nouveau dépôt, | + | Pour créer un nouveau dépôt, |
- | + | ||
- | === Mise à jour du dépôt distant === | + | |
- | + | ||
- | Une fois que votre nouveau dépôt a été créé, pour y pousser votre travail local, il faut commencer par renseigner son URL : | + | |
- | + | ||
- | git remote add origin git.faimaison.net: | + | |
- | + | ||
- | En d' | + | |
- | + | ||
- | git push --set-upstream origin master | + | |
- | + | ||
- | + | ||
- | Par la suite, un simple | + | |
- | + | ||
- | Et pour récupérer le travail | + | |
- | + | ||
- | git pull | + | |
- | ==== Recevoir les notifications ==== | + | |
- | + | ||
- | Dès que des commits sont poussés sur le serveur, un mail de notification est envoyé sur une liste de diffusion dédiée ('' | + | |
===== Troubleshooting ===== | ===== Troubleshooting ===== |
git.txt · Dernière modification : 2022/08/25 20:21 de gilou