Le blog qui vous aide à maîtriser le digital et développer votre visibilité en ligne !
401, rue des Pyrénées 75020 Paris

GitHub : qu’est-ce que c’est et comment l’utiliser ?

GitHub

En ingénierie web, les développeurs ont souvent besoin d’utiliser les mêmes bouts de codes pour des projets différents. Disposer d’un service cloud qui aide les programmeurs à stocker et à gérer leurs codes est un véritable avantage, notamment dans un contexte de collaboration en agence web. C’est là tout l’intérêt de GitHub, un service cloud dont la popularité est sans pareil aujourd’hui. L’outil accueille en effet plus de 25 millions d’utilisateurs professionnels. GitHub, selon les experts, permet d’améliorer la collaboration et le flux de travail. Cet article fait la lumière sur ce service et donne des astuces pour l’utiliser efficacement.

GitHub : c’est quoi ?

La documentation officielle de GitHub le définit comme une plateforme d’hébergement de code destinée à faciliter la gestion des versions et la collaboration. C’est donc un service qui permet aux développeurs professionnels de travailler avec d’autres personnes sur des projets divers, et ce, depuis n’importe quel emplacement. GitHub est aussi une solution cloud populaire qui héberge un système de gestion et de contrôle nommé « Git ». Il aide les programmeurs, distants les uns des autres, à apporter des modifications aux projets sur lesquels ils collaborent.

Il existe d’autres plateformes d’hébergement de projets Git. Mais GitHub est sans aucun doute la plus grande et la plus populaire au monde. Si vous envisagez de faire de la programmation web votre métier, vous serez probablement amené à travailler avec ce service. Il faut donc nécessairement comprendre comment il fonctionne afin d’en tirer le meilleur parti.


Lire aussi : Pourquoi utiliser GitHub en 2023 ?


Qu’est-ce que Git ?

Git GitHub

Il est facile de confondre Git et GitHub. Il existe pourtant une différence notoire entre les deux termes. Lancé en 2005, Git est un projet open source rapidement devenu l’un des systèmes de contrôle de version (VCS) les plus populaires du marché. Plus de 87% des programmeurs dans le monde utilisent le système Git pour leurs différents projets. C’est un système de contrôle de version distribué. Cela veut dire que tout programmeur appartenant à une équipe peut gérer le code source et l’historique des modifications s’il dispose d’un accès autorisé. Les modifications se font généralement à l’aide d’outils de ligne de commandes Git.

Contrairement aux VCS centralisés, le système Git propose des branches de fonctionnalités. Chaque collaborateur dans une équipe de développeurs peut créer une branche de fonctionnalités qui fournit un dépôt isolé local, apportant ainsi des modifications au code source du projet. Il faut savoir que les branches de fonctionnalités n’affectent pas la principale branche. Or, c’est au niveau de la branche principale que se trouve le code original du projet. Lorsque vous effectuez des modifications, la branche de fonctionnalité peut fusionner avec celle principale. Ce n’est donc qu’après la fusion des branches de fonctionnalités et principale que les modifications deviennent effectives.

Le contrôle de version

Le contrôle de version est un système qui facilite le suivi et la gestion des modifications que l’on apporte à un fichier ou à un ensemble de fichiers. Les ingénieurs logiciels l’utilisent souvent pour suivre les différentes modifications apportées au code source. En ce sens, le système de contrôle de version apparaît comme un élément indispensable dans la boîte à outils des ingénieurs logiciels. Ces derniers peuvent les utiliser pour analyser la pertinence des modifications et les annuler en cas d’erreur.

En d’autres termes, le contrôle de gestion est un système qui permet aux développeurs de travailler simultanément sur des logiciels open source. Il leur permet notamment d’effectuer toutes les modifications qu’ils souhaitent sans empiéter sur le travail de leurs collaborateurs. Le problème, c’est que certaines modifications apportées à un code source par un collaborateur peuvent ruiner le projet au moment du déploiement. Grâce à GitHub et à son système de contrôle de version, on peut facilement annuler les révisions et ramener la précédente version du projet. En résumé, le contrôle de version proposé par GitHub permet de minimiser, voire d’éliminer les risques de faire des erreurs. Il offre ainsi la liberté aux développeurs de collaborer sans trop d’inquiétude.

Comment utiliser GitHub ?

Pour utiliser GitHub, il faut avant tout commencer par créer un compte sur la plateforme. La création d’un compte GitHub se fait gratuitement. Il suffit de se rendre sur le site https://github.com et de suivre les instructions. L’intérêt des développeurs pour GitHub réside dans sa capacité à faciliter la collaboration sur différents projets à l’échelle internationale. En effet, n’importe qui a la possibilité de récupérer des projets complets sur GithHub et d’y apporter sa contribution. Bien entendu, cela n’est possible que si les propriétaires des projets le permettent. Sur la plateforme, vous avez la possibilité de cloner des projets publics, de les dupliquer (fork) et de contribuer en apportant des modifications. Le guide que nous vous proposons ici vous familiarisera avec les éléments les plus importants de GitHub tels que les :

  • Dépôts ;
  • Branches ;
  • Commits ;
  • Pull requests.

Nous vous guiderons dans la création de votre propre dépôt de code et vous montrerons le processus de pull request sur GitHub. Ce processus est une méthode largement adoptée par les programmeurs qui utilisent GitHub pour créer et réviser du code. En outre, grâce à ce guide de démarrage rapide, vous allez donc pouvoir :

  • Créer et exploiter un référentiel Git ;
  • Commencer et gérer une nouvelle branche ;
  • Effectuer des modifications sur un fichier ;
  • Faire un pull request (ouvrir et fusionner une requête de tirage).

Pour ce tutoriel, il n’est pas nécessaire de savoir coder, ni de savoir utiliser des lignes de commandes.

Les différents plans tarifaires pour utiliser la plateforme GitHub

Avant tout, il faut noter que GitHub est un service gratuit d’hébergement de code source. Toutefois, il propose aussi des plans payants pour la gestion et l’hébergement de codes privés. Le plan de base propose une infinité de dépôts et est ouvert à une infinité de collaborateurs. Ce plan propose toutefois une limite de 500 Mo d’espace de stockage. Si vous voulez travailler de façon professionnelle, avec une exploration approfondie des multiples fonctionnalités de GitHub, optez idéalement pour l’un des plans payants. Avec 4$ et 21$ par mois, vous avez respectivement accès aux forfaits “Team” et “Enterprise”.

Après avoir sélectionné votre plan, renseigné les informations nécessaires et finalisé la procédure d’inscription, vous pouvez désormais accéder aux fonctionnalités qu’offre la plateforme GitHub. À la différence de Git, l’utilisation de GitHub n’exige aucune compétence en matière de codage et ne nécessite pas l’utilisation de la ligne de commande.

Intéressons à présent à la première étape de votre apprentissage : la création d’un dépôt GitHub.

Création d’un dépôt

projet GitHub

Encore appelé “repo”, le dépôt constitue le cœur de votre projet. Il peut se présenter sous la forme d’un fichier ou d’un ensemble de fichiers renfermant du code, du texte, des images, ou tout autre élément. Pour amorcer le processus de création de votre dépôt GitHub, nous vous proposons de suivre les étapes suivantes.

Pour commencer, cliquez sur le bouton « Créer un dépôt » afin de démarrer un nouveau projet. En principe, votre nom de compte apparaîtra automatiquement dans la section « Owner ». Choisissez un nom pour votre dépôt et assurez-vous qu’il soit défini sur « Public » pour rendre le projet open-source. Cochez ensuite la case « Ajouter un fichier README ». Enfin, validez en cliquant sur le bouton « Créer un dépôt » (Create repository). Vous venez ainsi de créer votre nouveau dépôt avec le fichier original de votre projet. Dans les prochaines étapes, vous découvrirez les différentes possibilités qui s’offrent à vous avec votre dépôt.


Lire aussi : Quel outil de développement web utiliser en 2024 ?


Création de branches GitHub

La création de branches vous permet de générer différentes déclinaisons d’un dépôt GitHub. En modifiant le projet au sein de la branche de fonctionnalité, le développeur peut évaluer l’impact de ces modifications sur le projet principal lors de l’intégration. Voici la procédure idéale pour générer une branche de fonctionnalité :

  • Accéder au nouveau dépôt créé ;
  • Cliquer sur le bouton principal (main) ;
  • Saisir le nom de la nouvelle branche de fonctionnalité ;
  • Appuyez sur “Créer une branche”.

Vous venez de créer une branche de fonctionnalité quasi identique à la branche principale. Vous pouvez désormais y apporter des modifications en toute liberté sans altérer la structure du projet principal.

Valider les changements : les commits GitHub

Les “commits GitHub” correspondent aux modifications enregistrées sur la plateforme. À chaque modification du fichier de la branche de fonctionnalité, vous devez nécessairement le « commiter » afin de sauvegarder les changements. Pour effectuer et valider une modification, voici la démarche que vous devez suivre :

  • Sélectionner “principal” (main) puis choisir la branche nouvellement créée dans le menu déroulant afin d’accéder à la branche de fonctionnalité ;
  • Cliquer sur l’icône en forme de crayon pour débuter la modification du fichier ;
  • Une fois terminée, rédiger une courte description des modifications apportées ;

Pour finir, cliquez sur « Commiter les modifications ».

Créer des requêtes de suppression sur GitHub

Dans l’optique de partager avec d’autres développeurs travaillant sur le même projet les modifications récemment apportées, il est nécessaire de créer une “Pull Request”. La demande de retrait est essentielle, car elle facilite la collaboration sur GitHub. Les “Pull Requests” vous permettront d’observer les différences entre le projet d’origine et votre branche de fonctionnalité. La Pull Request constitue un moyen simple de demander à vos collaborateurs de réviser un code. Si les autres programmeurs du projet approuvent la demande, ils peuvent fusionner la Pull Request, intégrant ainsi les changements dans le projet principal.

Pour effectuer une Pull Request, voici les étapes à suivre :

  • Accéder à l’onglet “Pull requests” ;
  • Cliquer sur “Nouvelle pull request” ;
  • Dans la section “Comparaisons d’exemples”, choisir la branche de fonctionnalité sur laquelle vous étiez en train de travailler ;
  • Analyser attentivement les modifications avant d’appuyer sur “Créer une pull request” ;
  • Sur la nouvelle page, rédiger le titre et fournir une brève description de votre contribution pour demander la fusion ;
  • Enfin, cliquer sur le bouton “Créer une pull request”.

Désormais, tous les autres collaborateurs ont la possibilité de fusionner vos modifications avec les fichiers du projet original.

Copier un dépôt : fork vs clone

Pour dupliquer un dépôt GitHub sur votre machine, il suffit d’utiliser l’option “clone URL” de la plateforme. Vous obtiendrez automatiquement le lien du dépôt. Ensuite, vous devez exécuter la commande « git clone [URL] » dans votre console. Une autre solution consiste à utiliser l’option “fork” de GitHub. Un fork, c’est une reproduction d’un dépôt distant qui peut vous permettre d’apporter des modifications au code sans impacter le projet original.

La différence entre un fork et un clone réside dans le fait qu’un fork établit une connexion entre la reproduction et le projet original. Cela facilite la contribution au projet d’origine en soumettant des “Pull Requests”. En clonant un projet, il n’est pas possible de récupérer les changements ultérieurs du projet d’origine. Vous ne pouvez pas non plus contribuer au projet à moins que le propriétaire du projet d’origine ne vous accorde des droits spéciaux (privilèges).

La fonction “fork” s’avère extrêmement bénéfique, car elle offre la possibilité à toute personne de reproduire un projet et de participer à son développement. Cela donne l’assurance à l’auteur du projet que la version originale conservera son intégrité. Il revient en effet à l’auteur de valider ou non les différentes demandes de fusion (pull requests) que les contributeurs proposent.

GitHub pour la Data Science et le Machine Learning : l’importance du contrôle de version

La maîtrise du contrôle de version revêt une importance capitale dans certains domaines, notamment dans celui de la Data Science. Cela favorise une collaboration d’équipe plus efficace, simplifie le partage de projets et encourage l’entraide en cas de répétition de processus similaires. Même pour un Data Scientist travaillant habituellement seul, le contrôle de version offre la possibilité d’expérimenter et de tester des changements sans impacter directement son projet.

La plateforme GitHub est également utilisée fréquemment par les ingénieurs en Machine Learning. Elle leur permet simplement de tester la mise en production de modèles de Machine Learning avant de les appliquer. GitHub s’impose donc comme un outil indispensable pour l’ingénierie des données et du Machine Learning.

En conclusion

En principe, GitHub est une plateforme associée principalement à la communauté des ingénieurs logiciels. Mais elle offre une certaine polyvalence et peut être utilisée dans divers secteurs. Que ce soit pour des petites équipes ou des grandes entreprises œuvrant sur des projets impliquant la création de fichiers, le service GitHub peut s’avérer précieux.

À titre d’exemple, les équipes éditoriales et celles dédiées au marketing digital peuvent tirer parti de GitHub pour la gestion efficace de leurs projets. De même, les créatifs professionnels indépendants peuvent exploiter la plateforme pour coordonner leur travail lors d’une collaboration avec d’autres personnes.

Contrairement à la croyance populaire, l’utilisation de GitHub ne se limite pas à la programmation ou au développement. Cette plateforme de contrôle de version et accessible gratuitement, s’adapte à différents types de projets. Elle peut être exploitée de manière très diversifiée.

Et vous, de quelle manière utilisez-vous GitHub ?


Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *