Linux, utilisation de GIT

Je considère que si vous êtes là, vous avez déjà du rencontrer des tutos, ou des articles sur des forums, vous redirigez vers des GIT. Peut-être vous êtes vous déjà demandés ce que cela c’est, nous allons voir ici comment installer et utiliser Git.

La création d’un code, d’un projet nécessite souvent des retour en arrière sur le code, toutes les modifications ne sont pas forcément bonnes, le travail en équipe est indispensable sur de gros projets. Des outils de gestion de version peuvent rapidement devenir incontournables, c’est ici qu’intervient Git et Github.com.

Git et github : c’est quoi ?

Avant d’aller plus loin, nous allons juste voir ce qu’est Git et Github, vous ne le savez peut-être pas mais la force de Git sur Linux se retrouve avec github.com. Nous n’allons pas entrer dans les détails techniques (qui sont à notre niveau inutile mais vous pouvez allez sur openclassroom pour avoir un maximum d’informations).

Je n’ai pas fait le courageux en vous dirigeant vers ce lien mais en gros, vous allez créer (ou récupérer) localement un code que vous allez modifier, à intervalles réguliers vous allez procéder à des sauvegardes et ainsi avoir la possibilité d’y revenir. Vous allez pouvoir envoyer ce code vers un point central qui le rendra disponible pour d’autres en gardant dans l’historique global, les modifications qui ont pu y être fait.

Pour essayer de résumer en image un exemple :

Exemple de fonctionnement de GIT
Exemple de fonctionnement de GIT

Installation de Git et Github.com

github.com

Le plus simple, nous allons utiliser le site github.com pour centraliser notre travail (projet …), rendez-vous sur le site github.com, créez un compte et créez votre premier dépôt sur le site, voilà c’est fini.

Installation de git

Maintenant, nous allons procéder à l’installation de git sur votre poste.

Sur un système Fedora

Dans un terminal : yum install git

Sur un système Débian

Dans un terminal : apt-get install git

Pour les systèmes Mac

Rendez-vous sur sourceforge pour télécharger la sources.

Pour les systèmes Windows

Rendez-vous sur ce lien.

Utilisation de GIT

Ce qui suit fonctionne avec un système Débian, n’hésitez pas à dire les différences avec les autres systèmes.

Récupérer simplement un contenu provenant de github

On retrouve ça fréquemment sur des tutoriels, il suffira de récupérer le projet sur sa page github, il y a un bouton « Clone or Download »  , choisir :

  • « Open in Desktop » ouvrira le projet dans votre interface de bureau si celui-ci a été installé
  • « Download ZIP » téléchargera le projet dans un fichier compressé
  • « Clone with HTTPS« , copier le lien et dans votre terminal :
    cd /dossier/dans/lequel/travailler
    git clone "votre adresse"

Vous aurez donc le projet sur votre poste.

Travailler sur le projet GIT

Je pars du principe que vous avez créé sur github.com votre dépôt distant

Commencez par saisir votre mail et identifant pour les futurs utilisations, cela sera global à toutes vos utilisations, dans un terminal, saisir :

git config --global user.name "John Doe"
git config --global user.email johndoe@example.com

Initialisation d’un projet

Placez-vous dans votre dossier de travail ou bien le dossier qui contiendra votre projet puis commencer par initaliser votre projet si cela n’est pas déjà fait (cas d’un nouveau projet) et saisir : git init

Ajout d’un remote (un dépôt git)

Maintenant nous allons ajouter une destination (ou source, oui c’est contradictoire !!! ), il s’agit de l’adresse du git, faites :

git remote add origin https://github.com/USER/NOM_DU_DEPOT.git

« origin » sera l’alias de ce site.

Récupération, mise à jour d’un git existant en local

Là nous allons récupérer le contenu du dépôt déjà présent, si il est déjà présent dans notre dossier local, cela fera une mise à jour :

git pull origin master

On reconnait « origin« , « master » correspond à la branche que l’on souhaite récupérer.

Modification du dépôt local

Après avoir récupéré ou créé son dépôt en local, nous allons ajouter des fichiers à votre dépôt local :

# pour ajouter toutes les dossiers, fichiers présents
git add . 
# pour ajouter un fichier
git add mon_fichier
git add dossier/mon_fichier

Nous allons créer notre commit, cela mettra à jour votre dépôt local :

git commit -m "un message parlant pour comprendre ce qui a été fait"
# commit pour mettre à jour les fichiers sans qu'ils aient été rajouté, par exemple le cas d'une modification d'un fichier déjà présent sur le dépôt
git commit -a -m "un message parlant pour comprendre ce qui a été fait"

On peut ne pas ajouter tous les fichiers présents, c’est pour cela qu’il doivent être ajouter avec la commande git add.

de la même manière pour supprimer un fichier du dépôt : git rm fichier

Envoi, mise à jour d’un git existant sur github

Maintenant que vous avez fait vos modifications, création, nous allons envoyer tout ça vers le dépôt distant, accessible avec le site github.com. Saisir :

git push origin master

Votre identifiant et mot de passe sera demandé.

Voir les modifications / actions faites

Pour voir ce qui a été fait, saisir : git log

Vous allez obtenir la liste de tous les commits du plus récent au plus ancien, vous retrouverez votre identifiant (avec l’adresse mail), la date, le message (vous vous souvenez, il s’agit de celui saisie, pensez donc à mettre quelquechose de parlant) et de l’identifiant (une série de chiffres et lettres).

Voir le status de son git local

Pour voir le status de son git, les fichiers déjà pris en compte, les fichiers qui seront pris en compte, les modifications .., saisir : git status

Changer de version

Changer de version

Pour changer de version, revenir à une image correspondant à un commit précédant ou réavancer, il suffira de faire : git checkout "destination"

Où la destination peut être une autre branche que master (créée avec git branch "nom de la branche") ou bien l’identifiant (celui vu dans le log).

Revenir sur une version antérieure fera que chaque nouveau commit sera fait en parallèle de ce qui a pu déjà être.

Voici un petit exemple :

Git, exemple d'utilisation des branch²
Git, exemple d’utilisation des branch

Fusionner des versions (branches)

Enfin, pour fusionner différentes branches, vous pouvez revenir sur votre branche principale (celle sur laquelle les modifications doivent être faite) et faire : git merge "branche ou identifiant".

Conclusion

Maintenant que vous avez vu cela, votre vie de codeur pourrait changer, développer votre code seul ou à plusieurs, revenir sur un point sans perdre tout ce qui a fonctionné depuis. Pour de la maintenance comme pour le développement, git devient un ami irremplaçable.

Laisser un commentaire