Salut à tous les lecteurs. Je suis ravi de vous retrouver. Aujourd’hui, nous allons parler d’un sujet que nous n’avons jusque là jamais abordé, puisqu’il concerne cette fois la gestion des sources d’un projet. Nous allons parler de l’outil GIT et GITHUB, 2 outils de gestion de projet.
Avant de rentrer dans le vif du sujet, inscrivons le sujet du jour dans un context.
Qu’est-ce que c’est GIT ?
Dans le passé, pour gérer les versions du code source de son projet, le développeur devait faire des copies de son code et les sauvegarder dans un espace de stockage (différent ou non de la machine sur laquelle il effectue le développement). Mais vous conviendrez avec moi que cette façon de faire peut être très fastidieuse au fur et à mesure que la taille des sources du projet augmente et se compte en plusieurs méga ou même en giga octets. Et là, je ne vous parle même pas des cas où plusieurs développeurs doivent intervenir sur le même projet ! Les développeurs étaient tous obligés de copier le code du projet, chacun sur son ordinateur. Et une fois avoir fini de travailler, ils devaient transférer les fichiers modifiés au développeur en charge du projet, afin que ce dernier puisse les intégrer correctement (manuellement) dans le vrai projet. En gros, c’était tout un casse-tête sans nom.
Il y avait donc un vrai besoin. Pour répondre à ce besoin, GIT a été inventé ????. Mais qu’est-ce que c’est GIT ?
Git est un logiciel de gestion de versions décentralisé. C'est un logiciel libre et gratuit, créé en 2005 par Linus Torvalds, auteur du noyau Linux, et distribué selon les termes de la licence publique générale GNU version 2. (source : wikipédia)
GIT offre un historique complet des modifications effectuées sur le code, ce qui facilite la collaboration entre les développeurs et la gestion des versions antérieures du code.
Et GITHUB dans tout ça ?
GitHub est un service web d’hébergement et de gestion de développement de logiciels, utilisant le logiciel de gestion de versions Git. En effet, Git est souvent utilisé en conjonction avec un dépôt en ligne, comme GitHub, pour permettre à plusieurs personnes de travailler sur le même projet.
Allez passons à la pratique !
Installation de GIT
GIT est, aujourd’hui, est compatible avec pratiquement tous les systèmes d’exploitation. Notamment les plus populaires : Windows, MacOs et Linux. Pour le télécharger, vous n’avez qu’à vous rendre sur le site officiel de GIT. Une fois téléchargé, vous n’avez qu’à installer le logiciel en exécutant le SETUP selon le processus habituel de votre système d’exploitation.
La prochaine étape après l’avoir installé, c’est de tester dans un terminal si il a bien été installé. Vous pouvez ouvrir un terminal ou une invite de commande (pour les utilisateurs de Windows) puis taper la commande suivante :
git --version
pour voir la version du logiciel installée. Si vous obtenez une réponse vous affichant la version de GIT, alors il a bien été installé.
Initialisez votre dépôt
Dans un premier temps, je vous invite à créer un répertoire PremierDepot sur le bureau de votre machine. Vous pouvez le faire soit à la main, soit en utilisant la ligne de commandes.
Pour initialiser un dépôt Git, rendez-vous dans le dossier PremierDepot puis, lancer la commande
git init
Cela créera un sous répertoire .git qui contient un ensemble de fichiers qui vont permettre à un dépôt Git de fonctionner.
NB : quoi qu’il arrive ne supprimez jamais le dossier .git au risque de perdre tout l’historique que fourni GIT dans ce projet. A moins que vous ne soyez un expert et que vous êtes conscient de ce que vous faites ????.
Configurez votre projet
Il faut ensuite passer à la configuration du projet. Ici, on va donner un nom d’utilisateur (nom de votre choix) et un mail à notre projet avec les commandes :
git config --global user.name « votre username »
Et
git config --global user.email « votre mail »
Puis, on créé deux nouveaux fichiers nommés index.html et styles.css dans notre répertoire de projet :
- index.html
<!DOCTYPE html>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="styles.css">
</head>
<body>
<h1>Un super titre</h1>
</body>
</html>
- style.css
h1 {
color: red;
}
On peut vérifier à ce stade le statut de notre projet avec la commande
git status
On voit qu’il y a eu du changement sur le projet notamment la création du fichier index. Ces fichiers n’ont pas encore ajoutés et sauvegardés ou tout simplement « indexés » dans le projet.
Indexez vos fichiers avec la commande git add
git add index.html styles.css
Voilà, vous avez indexé vos deux fichiers !
Créez une nouvelle version avec la commande git commit
git commit -m “Ajout des fichiers html et css de base”
-m (comme message) est ce qu’on appelle un argument, qui est ajouté à la commande principale (git commit). Ici -m permet de définir un message particulier rattaché au commit effectué. Si vous n’utilisez pas cet argument, la commande “git commit” ouvrira un éditeur de texte dans lequel vous pourrez saisir le message de commit.
Envoyez votre commit sur le dépôt distant avec la commande git push
Créer une version de votre projet, c’est super, mais il faut désormais passer votre commit du repository à votre dépôt distant. On dit qu’il faut “pusher” votre commit.
Votre premier push va vous demander un peu de configuration. Pour commencer, vous allez devoir “reliez” votre dépôt local au dépôt distant que vous devez créer au préalable sur GitHub. Pour cela :
- Allez sur GitHub puis connectez-vous.
- Cliquez sur la petite image en haut à droite.
- Cliquez sur “new repository”.
- Create repository
Il va falloir copier l’URL du depot créé. Maintenant, retournez sur Git Bash et tapez la commande suivante :
git remote add origin « URL DU DEPOT »
Ensuite, tapez la commande :
git branch -M master
Ça y est ! Vous avez relié le dépôt local au dépôt distant. Vous pouvez donc envoyer des commits du repository vers le dépôt distant GitHub en utilisant la commande suivante :
git push -u origin master
Bravo, la version du projet est maintenant stockée dans le cloud !
Bien ! On avance bien là, vous trouvez pas ? Nous venons de voir comment initier un dépôt GIT local et l’envoyer sur GITHUB. Toutes ces étapes sont les étapes qu’un développeur qui veut mettre en ligne son projet doit suivre. Maintenant, comme GITHUB permet à plusieurs développeurs d’interagir sur un même projet plus facilement, mettons-nous dans la peau d’un autre développeur qui voudrait participer à votre projet et vous aider à développer votre application, site, etc.
Cloner un dépôt Git
Dans son cas, ce dernier doit faire ce que dans le jargon on appelle « Cloner » le projet. En fait, c’est simplement faire une copie de la dernière version de votre code hébergé sur le site GITHUB. Pour cloner un dépôt, il nous faut l’url de ce dépôt et utiliser la commande git clone comme ceci :
git clone « URL DU DEPOT »
Si il veut cloner dans un dossier différent du nom du dépôt, il faut qu’il renseigne le nom du dossier comme ceci :
git clone « URL DU DEPOT » nom_du_dossier
RESUME
- git add permet d’ajouter des fichiers dans l’index, qui est une zone intermédiaire dans laquelle stocker les fichiers modifiés.
- git commit permet de créer une nouvelle version avec les fichiers situés dans l’index.
- git commit -m permet de créer une nouvelle version et de préciser le message rattaché au commit.
- git push permet d’envoyer les modifications faites en local vers un dépôt distant.
- git clone permet de faire une copie de la dernière version de votre code hébergée sur le serveur de GITHUB.