GIT Tutoriel #1 : Manager son projet

Par Benjamin SANCHEZle 04/05/2012

Suite aux demandes d'un Tutoriel en français sur l'utilisation de Git, je lance une petite série d'articles pour apprendre Git, des bases jusqu'aux fonctionnalités les plus poussées. Premier article, la base : Utiliser Git pour manager un projet

Introduction

Suite aux demandes d'un tutoriel en français sur l'utilisation de Git, je me lance sur une série d'articles pour vous apprendre a utiliser et configurer git, installer et utiliser un serveur comme Gitosis, et quelques petites autres astuces.

(Si vous vous demandez ce qu'est Git et/ou comment l'installer, je vous renvoie sur mon article de présentation)

Enfin, je ne traiterais ici que de la gestion de Git depuis la console. Il existe des interfaces, mais je me trouve toujours limité d'une façon ou une autre avec. Les commandes ne sont pas suffisamment nombreuses ou compliquées pour que l'utilisation en console ne soit pas préférée.

Utilisation de Git

1 - Préparons le terrain

Pour ce tout premier exercice, nous allons créer un projet, que nous allons manager avec Git. Créons donc un dossier, puis positionnons nous dedans avec notre console.

Pour cela, les gens sous linux ou mac devrons utiliser cd, et les gens sous Windows devront faire un clic-droit sur le dossier du projet et sélectionner git bash here.

Maintenant, nous allons initialiser git, avec la commande git init

Le résultat devrait être une ligne du genre Initialized empty repository in /your/path/here

2 - Créons notre premier fichier

Nous allons maintenant créer un fichier. Créeons donc un fichier README vide.

Nous allons pouvoir essayer notre première commande Git ! (Bon, nous avons bien utilisé init, mais elle ne compte pas trop). Essayons la commande git status

Nous pouvons voir en résultat le statut de notre dossier : Nous sommes sur la branche Master (la branche principale), et il y a un "Untracked file", c'est à dire un fichier non surveillé. Ce fichier n'est actuellement pas pris en compte par Git, nous allons donc l'ajouter. Pour cela, tapons git add README

Regardons à nouveau le statut de notre dossier :

Nous pouvons maintenant voir qu'il n'y a aucun fichier untracked, mais que des modifications sont en attente de commit : Nous avons créé un fichier, README.

Commitons donc les modifications apportées à notre projet. La commande utile ici est commit. Nous allons y ajouter le flag m, pour pouvoir mettre un petit message avec notre commit. Nous allons donc taper git commit -m "Creation du  readme"

Regardons le statut de notre dossier : Il n'y a plus rien à commiter.

Ouvrons notre README, et ajoutons y un peu de texte. Tapez dedans "Ceci est un projet pour essayer l'utilisation de git."

Maintenant, le statut du dossier nous montre bien qu'un fichier a été modifié. Il ne nous reste plus qu'à l'ajouter au prochain commit, puis de commiter, comme la dernière fois. Pensez tout de même à mettre un autre message ^^.


3 - Créons une branche

Git fonctionne avec un système de branches. Il est possible, quand l'on veut essayer quelque chose, de le séparer du reste dans une branche à part, pour que les modifications n'affectent pas le projet principal tant que nous ne l'avons pas décidé.

Pour voir toutes les branches de notre projet, la commande est git branch. Essayons !

Comme vous pouvez le voir, nous n'avons qu'une seule branche, "master". Ajoutons donc une branche, que nous nommerons "testing", toujours avec la commande branch. Essayons git branch testing, puis regardons de nouveau nos branches.


Nous pouvons bien voir qu'une branche a été ajoutée, mais nous ne sommes pas dessus. Pour changer de branche, la commande est "checkout" suivi du nom d'une branche. Ici, git checkout testing

 

Si vous regardez la liste des branches, vous pouvez maintenant voir que l'astérisque (*) a changé de place. Nous sommes sur la branche testing.

Modifiez votre fichier README, puis commitez votre changement. Revenez sur la branche master, et regardez votre fichier. Vos modifications ne sont plus là, car elles ont été effectuées sur une autre branche !

4 - Gérer les modifications

Modifiez encore une fois votre fichier README, mais sans commiter le résultat.

Maintenant, essayons d'imaginer que nous sommes sur un projet plus important, avec de nombreux fichiers. Nous avons fait plein de tests pour réussir à faire fonctionner la feature que nous voulions commiter, et nous y sommes enfin! Il ne nous reste plus qu'à faire un commit propre. Pour cela, nous regardons le statut de notre dossier, et voyons plusieurs fichiers modifiés. Nous nous rappelons de la plupart des modifications, mais certains fichiers (README par exemple) nous sont sorties de l'esprit.

Pour savoir ce que l'on a modifié depuis le dernier commit sur notre fichier README, la commande est diff. Essayons git diff README


Nous pouvons voir nos modifications. Une ligne a été enlevée, une autre ajoutée. (En réalité, j'ai simplement modifié une ligne, mais c'est comme ça que git gère les modifications de lignes).

Ma modification n'est pas bonne du tout, je ne compte pas la garder dans mon commit. Je vais donc faire revenir mon fichier README tel qu'il était au commit précédent. Pour cela, la commande est encore checkout.

Essayons git checkout README

Et voilà, mon fichier est redevenu correct, je vais pouvoir garder un dossier propre.

Pour finir

Il reste encore énormément de choses à voir et savoir à propos de Git, mais vous avez déjà là quelques commandes suffisantes pour commencer seul à manager vos projets.

La semaine prochaine, nous verrons comment travailler avec plusieurs dépôts, les synchroniser entre eux pour faire des sauvegardes, travailler en groupe, ou déployer efficacement ses projets.

  • Partager l'article en 1 clic !

    Subtitle
Avatar_thumbAuteur : Benjamin voir son blog

Développeur autodidacte depuis quelques années, déjà, je suis le développeur du blog du webdesign, où mon rôle est de concretiser les différentes idées et maquettes.

Devenez membre !

Rejoignez la communauté des créatifs du web !
- Partagez vos créations
- Gagnez en visibilité
- Créez votre blog facilement
> En savoir plus

Créer mon compte

4Commentaires

  • Avatar_thumb
    Taillard

    le 04/05/2012 | #1

    Super tuto et super initiative de proposer un éclaircissement sur GIT, qui est vraiment trop puissant! vivement la semaine prochaine pour un nouveau tuto! Merci et bon weekend!

  • Avatar_thumb
    ze0ne

    le 05/05/2012 | #2

    Une série qui visiblement commence bien, même si c'est frustrant de de ne pas pouvoir mettre en production après la lecture de cet article. Il est important de comprendre le fonctionnement du système pour éviter les erreurs. Merci pour l’intérêt que tu porte à Git et du temps que tu prends pour partager ton expérience avec ce dernier.

  • Avatar_thumb
    Benjamin SANCHEZ

    le 07/05/2012 | #3

    Oui, il manque des pièces pour réellement utiliser efficacement git. J'ai parle de branch, mais pas de merge. j'ai parle de add mais pas de rm. Et surtout, je n'ai pas parle le moins du monde de la synchronisation. Je comprend que ça soit frustrant pour ceux qui aimeraient aller plus loin. Je voulais quand même commencer par le début, c'est a dire le fait que git serve a manager complètement son projet, pour éviter qu'il soit confondu avec une sorte de rsync, ou un remplacement au ftp.

    Mon article de présentation donnait quelques ressources pour commencer, que je conseil pour les plus presses ^^.

  • Avatar_thumb
    yann faurie

    le 09/05/2012 | #4

    Merci pour cet article (et celui portant sur la présentation de Git), j'attends le prochain avec impatience aussi ;-)

Ecrire un commentaire

captcha

Ouvrir