Le but de ce document est d’expliquer comment utiliser le logiciel de gestion de version GIT. Seules les principales commandes seront indiquées ici.
On suppose que GIT est déjà installé. Si ce n’est pas le cas, il faut se rendre sur cette page Internet (site officiel) : https://git-scm.com/.
Une fois que vous avez créé un répertoire et mis vos fichiers dedans, placez-vous dans le répertoire du projet avec un Terminal (Mac OS X et Linux) ou l'invite de commande et exécutez la commande :
git init
Ceci aura pour effet de créer toutes la structure et l’arborescence de dossiers nécessaire à la gestion des versions.
En règle générale, toutes les commandes devront être exécutées dans le répertoire qui contient le code source de votre projet de développement informatique.
Avec GIT vous pouvez récupérer un projet complet avec les sources et l’historique des modifications. Pour ce faire utilisez la commande :
git clone url-du-projet-git repertoire-destination
Ceci aura pour effet de recopier tous le projet git dans le répertoire de votre choix.
Exemple d’utilisation :
git clone https://github.com/jquery/jquery.git jquery
Cette commande aura pour effet de recopier les sources de la librairie JQuery dans le répertoire jquery.
A tout moment, vous pouvez consulter des informations sur le projet. Vous pouvez ainsi regarder quels sont les derniers fichiers que vous avez modifiés :
git status
La liste des fichiers indiqués par cette commande désigne les fichiers que vous avez modifiés localement (dans votre répertoire) et qui n’ont pas encore été pris en compte par GIT.
Vous pouvez aussi consulter la liste des dernières modifications prises en comptes par GIT avec la commande suivante :
git log
Vous aurez ainsi accès à l’ensemble des modifications effectuées sur le projet. Chaque modification est identifiée par un «id».
Exemple de modification :
commit ae138ac6d199163f48b31685d63d22832fc41ad2
Author: jaubourg
Date: Wed Mar 7 18:23:46 2012 +0100
Makes sure start is always called with default context and no arguments.
Should stop FF from acting up. Hopefully, this ugly patch can be removed in the
future.
Cette modification (ou «commit» dans le jargon GIT) a pour identifiant « ae138ac6d199163f48b31685d63d22832fc41ad2».
Dans l’exemple précédent, nous avons vu que la modification « ae138ac6d199163f48b31685d63d22832fc41ad2» a eu lieu. Nous pouvons voir les fichiers modifiés grâce à la commande suivante :
git diff ae138ac6d199163f48b31685d63d22832fc41ad2
Pour être certain d’avoir votre projet à jour, il est important de récupérer régulièrement les dernières modifications depuis le dépôt principal du projet (s’il existe) :
git pull
Dans GIT tous les fichiers concernés par le projet sont à ajouter manuellement. Ainsi, si vous ajoutez le projet classe-sup.php vous devrez ajouter ce fichier au gestionnaire de version avec cette commande :
git add classe-sup.php
Si vous venez de modifier le fichier classe-sup.php et que vos tests sont corrects, vous devez le notifier dans GIT. Pour ce faire, exécuter cette commande :
git commit classe-sup.php
On vous demandera aussi un commentaire décrivant la modification effectuée. Vous pouvez faire un «commit» sur plusieurs fichiers à la fois en les mettant les uns à la suite des autres.
Pour faire un commit sur l’ensemble des fichiers modifiés, c’est la commande suivante qui sera utilisée :
git commit -a
Cependant, il vaut mieux s’assurer que tout est en place avant de faire ceci (commande «git status») et ne pas faire de «commit» sur des fichiers qui n’ont pas à se retrouver sur le serveur principal (comme un fichier de configuration de base de données).
Si vous venez de faire un «commit» mais que vous voulez modifier sa description, exécutez la commande suivante :
git commit -amend
Cela va vous permettre de modifier votre dernier commit et renseigner une meilleure description.
Pour annuler le dernier commit exécutez la commande suivante :
git reset HEAD^
Pour annuler le dernier commit et les modifications sur les fichiers :
git reset --hard HEAD^
Pour annuler les modifications sur un fichier avant commit :
git checkout fich.php
Pour annuler un commit via son identifiant :
git revert ae138ac6d199163f48b31685d63d22832fc41ad2
Une fois vos modifications effectuées via un «commit», vous devez l’envoyer sur le serveur afin que les autres développeurs y aient accès :
git push