Table des matières

GitHub

Présentation

GitHub (exploité sous le nom de GitHub, Inc.) est un service web d’hébergement et de gestion de développement de logiciels, utilisant le logiciel de gestion de versions Git.

Un logiciel de gestion de version permet de :

Installation

Le plus simple est de télécharger : https://git-scm.com/downloads (Laissez les options par défaut)

Il est nécessaire d’avoir un compte chez github et d’avoir été invité comme membre du projet: https://github.com/LE2P

Configuration sur IntelliJ

Installation depuis : https://www.jetbrains.com/idea/download

(Il est possible d’avoir une licence “éducation” gratuite pour la version Ultimate en faisant une demande : https://www.jetbrains.com/student/).

Au démarrage:

Ensuite pour importer un projet:

Pour mettre à jour le projet après modification,

Utilisation en ligne de commande

(pour les utilisateurs qui n’ont pas d’IDE dédié à cela comme par exemple MATLAB, etc.)

Déposer un projet existant sur GitHub

/rep1/
/rep2/

Ca y est, votre code est en ligne et synchronisé avec votre machine local !

Et ensuite ?

En partant du principe que nous n’avez d’IDE dédié, une fois que vous avez modifié vos fichiers, que faire ?

Un bon message de commit

Il est recommandé de faire régulièrement des commits, mais pas des push. Vous ne devriez faire un push qu’une fois de temps en temps (pas plus d’une fois par jour en général). Evitez de faire systématiquement un push après chaque commit. Pourquoi ? Parce que vous perdriez la facilité avec laquelle il est possible d’annuler ou modifier un commit.

La convention avec Git est de rédiger un message de commit comme on rédige un e-mail : une ligne courte de sommaire (la seule qui s’intéresse à la question « Quoi ? »), puis une ligne vide, puis un argumentaire rédigé expliquant pourquoi le changement est bon.

Le format est donc :

<ligne de sujet>

<un ou plusieurs paragraphe d'explications>

La ligne de sujet doit rester courte (si possible moins de 50 caractères, pour que la sortie de git log –oneline tienne dans un terminal de 80 colonnes). C’est l’équivalent du sujet d’un e-mail, et c’est cette ligne qui apparaîtra dans gitk ou git log –oneline par exemple.

Il faut une ligne blanche pour séparer la ligne de sujet, sinon Git va afficher tout le premier paragraphe partout où il aurait affiché la ligne de sujet.

La suite est une explication rédigée sur le commit. Ne pas hésiter à faire une explication longue si c’est nécessaire (typiquement plusieurs paragraphes).

Sauf cas particulier, on préférera donc rédiger un message de commit depuis son éditeur de texte préféré (lancé par défaut par git commit) à l’option –message (-m) de git commit.

Méthode de travail

Lorsqu’on travaille avec Git, on suit en général toujours les étapes suivantes :

  1. modifier le code source ;
  2. tester votre programme pour vérifier si cela fonctionne ;
  3. faire un commit pour « enregistrer » les changements et les faire connaître à Git ;
  4. recommencer à partir de l’étape 1 pour une autre modification

Une fois que cela est fini, on fait un push en fin de journée par exemple sur GitHub.

À titre indicatif, si vous travaillez toute une journée sur un code et que vous ne faites qu’un commit à la fin de la journée, c’est qu’il y a un problème (sauf si vous avez passé toute la journée sur le même bug). Les commits sont là pour « valider » l’avancement de votre projet : n’en faites pas un pour chaque ligne de code modifiée, mais n’attendez pas d’avoir fait 50 modifications différentes non plus !

Liens très utiles

CheatSheet

Github/git CheatSheet.pdf

<html> <object data=“http://le2p.univ-reunion.fr/le2pWiki/lib/exe/fetch.php/tutos/github-git-cheat-sheet.pdf” type=“application/pdf” width=1024 height=768></object> </html>