Version fidèle au support fourni : formulations, exemples, commandes et exercices conservés. La présentation et la numérotation sont adaptées au wiki.
2.1 GitHub
2.1.1 I. Introduction
2.1.1.1 Qu'est-ce que GitHub ?
GitHub est une plateforme en ligne de développement collaboratif lancée le 10 avril 2008. Exploitant le logiciel de gestion de versions décentralisé Git, la plateforme permet à tout utilisateur d'y héberger ses projets et de les rendre accessibles au développement coopératif grâce à un système de dépôts, en anglais, repository, retraçant les avancées et modifications apportées aux projets. Outre ses facettes techniques qui attirent les développeurs, l'un des aspects majeurs de GitHub est son caractère social prononcé. Avec plus de 50 millions d'utilisateurs inscrits, le site met l'accent sur les interactions entre ceux-ci en proposant des fonctionnalités de suivi d'utilisateurs, suivi de projets, de discussions et bien d'autres encore, le tout dans une optique de laisser la vaste communauté s'approprier la plateforme.
Comme toute plateforme gratuite, elle comporte son lot de limitations. En effet, la partie gratuite de GitHub est principalement orientée autour du développement de projets de particuliers. Dès lors qu'une entreprise ou une équipe privée de développeurs cherche à intégrer GitHub à leur mode de fonctionnement, la version gratuite n'est plus suffisante et les organisations sont poussées vers des forfaits payants. Les fonctionnalités ajoutées sont multiples, et peuvent aller d'une simple augmentation de l'espace d'hébergement par utilisateur, à l'ajout de Wikis et de branches protégées. Le détail de ces différents forfaits sont retrouvables ici.
2.1.1.2 Le marché de la gestion de code
Naturellement, GitHub n'a pas le monopole absolu du développement collaboratif en ligne. Également construit autour de Git, GitLab est sans doute la meilleure alternative à GitHub. Open source, l'outil est privilégié par les entreprises pour son approche DevOps et ses outils d'administration organisationnelle. À d'autres niveaux, on peut également citer les plateformes de gestion de code proposées par Google et Amazon : Cloud Source et AWS CodeCommit, pouvant également être de bonnes alternatives si l'organisation choisie se base déjà autour des services cloud de Google ou AWS.
2.1.1.3 Se lancer sur GitHub
Pour utiliser la plateforme, il faut avant tout se créer un compte sur ce lien. Vous n'aurez qu'à vérifier votre compte à l'aide du lien qui vous sera envoyé à l'adresse mail renseignée.
Une fois que cette étape est faite, deux options se présentent à vous pour interagir avec la plateforme : Git ou GitHub Desktop. Dans la continuité de ce cours, nous ne nous intéresserons qu'à l'approche avec Git. Il reste intéressant de dire quelques mots sur GitHub Desktop.
GitHub Desktop est un outil visant à simplifier les interactions avec GitHub en permettant aux utilisateurs de s'affranchir des lignes de commandes Git tout en gardant une vision d'ensemble claire de l'état des projets administrés. Pour les moins férus de shell c'est l'alternative idéale, en revanche d'autres plus expérimentés diront que l'application limite les possibilités de par son interface _trop simplifiée_.
Comme dit précédemment, nous ne présenterons dans ce cours que l'approche de GitHub par Git, assurez-vous qu'il est bien installé de votre côté.