tutoriels:git

Versionner un projet avec GIT

Ce tuto explique comment versionner un projet avec git, sur la forge de l'ECM.

Sur Linux

L'authentification à git se fait via un système de clés exactement comme ssh. L'utilisateur qui va faire les commit doit avoir sa clé publique enregistrée sur la forge.

Pour générer une nouvelle clé publique :

$> ssh-keygen
$> cat ~/.ssh/id_rsa.pub

Votre clé publique va s'afficher. Il faudra l'ajouter au compte qui va effectuer les mises à jour sur le projet. (A priori votre compte)

La clé privée s'est créée et placée par la commande. Il faut maintenant ajouter la clé à la forge en suivant la prochaine étape.

Sur Windows

Allez télécharger puttygen.exe qui vous permettra de générer une belle clé.

Vous ouvrez le logiciel, vous cliquez sur Generate, en commentaire de la clé vous mettez username@machine (par exemple rgrondin@rog, où ici rog est le petit nom de ma machine). Vous mettez éventuellement une passphrase (mot de passe nécessaire à l'utilisation de la clé). Vous faites Save public key et la mettez où vous voulez, où vous pourrez la retrouver.

Pour le Save private key mettez là à un endroit un peu caché, connu de vous seul. Cette clé ne doit pas fuiter sinon elle sera compromise et il faudra la supprimer.

Vous copierez la clé publique qui s'affiche (et qui est sauvegardée dans le fichier de clé publique) sur la forge en suivant la prochaine étape.

Ajouter la clé à la forge

La page d'ajout des clés se trouve dans vos options de compte sur la forge. Donnez lui un nom clair pour l'identifier (Exemple : GinfoHeimdall pour le compte ginfo sur heimdall)

Tout d'abord il faut créer un projet sur la forge. Cela se fait à partir de page des projets de celle-ci.

Les projets peuvent avoir un projet parent. Pour les projets propres au GInfo on prendra le projet GInfo comme projet parent.

Une fois le projet créé il faut lui créer un dépôt.

Pour cela il faut aller dans l'onglet configuration, et de là on peut ajouter un dépôt. Un dépôt se caractérise par son identifiant, qui sera contenu dans l'url du dépôt. Pour créer le dépôt laisser les options par défaut.

Une fois le dépôt créé, on a une url du genre ssh://git@git.centrale-marseille.fr/ginfo/reseau-assos/reseau.git qu'il faut conserver pour la suite. ici reseau est l'identifiant du dépôt, et reseau-ginfo le nom du projet. (dont le parent est ginfo, d'où le ginfo dans l'url)

Pour l'installation tout simplement :

$> sudo apt-get install git

La configuration consiste à indiquer votre nom et votre mail.

git config --global user.name "GInfo"
git config --global user.email "ginfo@centrale-marseille.fr"

Pour pouvoir envoyer vos fichiers sur votre dépôt il faut avoir un dossier en local qui en sera la copie. Vous y ajouterez les fichiers qui devront aller sur le dépôt git.

Pour l'exemple, imaginons un dossier depot qui contiendra le projet. On y initialise git.

$> cd depot
$> git init

On indique à git où il faudra envoyer les fichiers.

$> git remote add origin ssh://git@git.centrale-marseille.fr/ginfo/reseau-assos/reseau.git

Ici l'url est celle que vous avez obtenue tout à l'heure en créant le dépôt.

Pour l'exemple, imaginons que votre dossier depot contient ceci :

  • depot
    • dossier1/
    • dossier2/
    • fichier.txt

Vous voulez uniquement ajouter dossier1/ et tous ses sous-dossiers et fichiers ainsi que fichier.txt

$> cd depot
$> git add dossier1 fichier.txt

Ensuite on effectue le premier commit.

$> git commit -m 'Initializing depot repository'
La machine doit être connectée au portail captif pour la suite. (A faire attention pour les cron notamment)

Et on balance le tout

$> git push origin master

Normalement à la fin de l'exécution de cette commande, vous pouvez voir le contenu que vous avez ajouté apparaître dans le dépôt sur la forge.

Pour update manuellement le repository Git, naviguez dans le dossier voulu et tapez

$> git commit -am 'update manuelle'

Puis on push le commit :

$> git push origin master

Pour récupérer les derniers commits sur votre PC, utilisez :

$> git pull

C'est la même procédure que le premier commit. Après une mise à jour des fichiers (ajout de fichiers ou modifications), il suffit de se placer dans le dossier depot, d'ajouter les modifications au projet git, d'effectuer un commit et de push.

  • tutoriels/git.txt
  • Dernière modification : 06/11/2017 09:06
  • de rgrondin