Logo lms Le Mâle Saint Le côté obscur du mâle.

[Tutoriel] Collaboration et versioning, Git à votre rescousse

116741815310804479 cnaxlstz f
Je reviens vers vous pour vous proposer un nouveau tutoriel ("depuis le temps" me direz-vous, mais le temps, si j'en avais...). Comment utiliser Git ? Grande question, grande réponse ai-je envie de dire (je plaisante, et ce n'est que le début). Commencons par le commencement. Git est un outil de versionning très puissant , créé par Linus Toward entre autres (argument de poids pour le choisir non ? Non ? J'aurais au moins essayé).

Pourquoi, j’utilise Git ?  Pour faire du travail collaboratif, au boulot et dans mes projets personnels. Concis comme réponse, c'est vrai mais pourtant c'est aussi simple que ça. Git me permet de bosser sur des projets réunissant plusieurs personnes sans devoir m'inquiéter de qui a modifié quoi. Quelques commandes et, bim, mon projet est à jour en local. Pour tout vous avouer : c'est le pied.

Des pré-requis ? Pour commencer, il est nécessaire que Git soit installé (la base). Je vous laisse le lien, si vous avez des questions, n’hésitez pas.

Créer son dépôt Git  Une fois installé, cherchez le logiciel « Git Bash » pour les windowsiens, sinon ouvrez votre commande line pour les autres.

Si vous voulez récupérer un dossier déjà sur Git : - Placez vous dans le répertoire de votre choix - Ajoutez le dépôt distant à votre configuration Git avec la commande :

  git clone url_dossier_git nom_dossier
Cette commande va cloner le dossier Git sur votre ordinateur dans le dossier « nom_dossier ».

Logiciel de versioningCréer un nouveau projet : Si vous souhaitez créer un nouveau projet dans ce répertoire « nom_dossier »(et que la suppression des fichiers présents ne pose aucun problème) alors supprimez tous les fichiers se trouvant dans ce nouveau dossier. La suppression n’est pas une obligation mais elle permet d’avoir un dossier propre avant de placer un projet dedans, pour y voir un peu plus clair.

Revenez à la commande line, et tapez la commande ci-dessous pour valider la suppression des fichiers:

 git commit –m ‘commentaire’
Le ‘commentaire’ est un commentaire, BREAKING NEWS, qui permet d’intituler notre commit afin de savoir à quoi correspondent les modifications effectuées. J’aurais pu mettre, par exemple, « suppression ancien projet ».

Maintenant il faut copier/coller votre projet à l’intérieur de ce dossier. Dès que c’est fait, il faut entrer la commande :

 git add –f *
Elle vous permet d'indexer les nouveaux fichiers. Faites de nouveau un commit. Je reviendrai sur les commandes add et commit, ne vous inquiétez pas.

Il est temps de « pusher » votre nouveau projet en ligne :

 git push origin master
Revenons sur cette commande : « origin » est l’alias de l’adresse du répertoire git et « master » est la branche dans laquelle vous pushez vos modifications.  Par contre, si vous avez une erreur lors du « push », il est possible que l’alias ne soit pas correct. Je ne peux pas vous dire pourquoi, mais je peux vous donner l’astuce pour résoudre le problème :
 git remote rm origin
 git remote add origin addresse_git
Il est possible que lors du "clone" vous aillez une adresse en https:// … alors que celle demandé est du gente « git@... » (TRUE STORY).

Si votre dossier sur git est vide Allez dans le dossier que vous voulez partager sur git

 cd chemin_dossier
Dès que c’est le cas, vous devez entrer la commande suivante :
 git init
Bref, vous venez d’initialiser votre dépôt git pour votre projet, si ça ce n'est pas une bonne nouvelle.

Ajoutez votre projet au répertoire git

Maintenant, vous devez indexer tous les fichiers au répertoire git. Il suffit de taper la commande :
 git add *
Pour indexer tous les fichiers/dossiers du repertoire (ou pour forcer si certains fichiers sont rejetés) :
 git add –f *
Si vous ne voulez ajouter que certains fichiers ou dossiers, remplacez le « * » par le nom du fichier/dossier en question.

Envoyez sur le serveur !

Dès que les modifications sont faites et que vous voulez les partager, il vous suffit de taper la commande suivante :
 git commit –m ‘titre du commit’
En résumé, cette commande va vous permettre de valider vos modifications en local mais pas encore de partager sur git. Il faut ajouter votre dépôt distant avec la commande suivante :
 git remote add origin addresse_git
"origin" est l'alias du dépôt distant, ça vous évitera de devoir mettre l'url de git à chaque fois (d'ailleurs l’adresse est une adresse du type « git@.. »).

Maintenant, mettons tout à jour sur le serveur distant avec la commande suivante :

 git push origin master
Orgin correspond au nom du serveur distant alors que master correspond à la branche sur laquelle vous voulez pusher, oui je sais, je radote, mais mieux vaut trop que pas assez.

Bravo, vous avez mis à jour votre projet en ligne et vos collaborateurs pourront y accéder.

Pour finir, si vous voulez récupérer les dernières modifications, il faut taper la commande suivante :

 git pull origin master
Cette commande va récupérer tous les fichiers sur git et les mettre à jour sur votre dossier local. Attention, il peut y avoir des conflits. Personnellement, je n'en ai jamais eu  mais « c’est quelqu’un qui m’a dit » (référence musicale honteuse, soit) qu'il y en avait régulièrement. Je préviens juste.

D’ailleurs pour éviter d’avoir des conflits, si vous travaillez à plusieurs (c’est un peu le but de git au final), il est important de faire un :

 git pull origin  master
(Même si les conflits surviennent tout de même de temps à autre). Si lors du "pull", vous avez des conflits, il est important de les corriger avant de pusher sinon vous risquez d'écraser le travail d'un autre collaborateur. Si ce n'est pas le cas, vous aurez les dernières modifications des fichiers sur git, et vous pourrez effectuer la commande pour mettre votre travail en ligne:
 git push origin master
BINGO, si tout s'est bien passé, c'est parfait, par contre si vous avez des erreurs ou conflits qui vous posent problème (ce qui est fort probable), laissez vos questions. (Je ne vous promets pas de pouvoir répondre à toutes vos questions, certaines erreurs dans Git reste encore un mystère pour moi AUSSI).

Pour suivre le Mâle saint plus facilement, retrouvez-nous sur Facebook :)


Vous avez aimé ? Partagez cet article:



Les réactions

  • Emma Le 16 Apr 2012

    Ouh mais c'est un Akita Inu ton toutou ;-) J'adore ces chiens!!!

    • Georges Le 17 Apr 2012

      Ahah, ce n'est pas le genre de commentaire auquel je m'attendais, mais merci :). (Ce n'est pas le mien, malheureusement).

  • Gitstack Le 18 Apr 2012

    Bonjour,

    Si jamais cela vous intéresse, il existe un outil open source permettant d'utiliser Git facilement sur un serveur Windows : Gitstack.
    L'outil est puissant et très simple à installer et uiliser.

    Bonne journée,

    • Georges Le 24 Apr 2012

      En effet, j'ai été faire un tour sur le site et ça parait fort interessant mais je vais pas vous mentir, j'utilise Github comme un bon nombre de développeurs (je suppose).
      Merci tout de même pour le conseil !

Découvrir d'autres articles