Présentation de GitHub
GitHub est la plus grande communauté open source au monde. Microsoft possède GitHub. GitHub est une plateforme de développement inspirée de la façon dont vous travaillez.
Vous pouvez héberger et passer en revue le code, gérer les projets et créer des logiciels en même temps que 40 millions de développeurs de l’open source vers l’entreprise.
GitHub est un service d’hébergement de référentiel Git qui ajoute une grande partie de ses fonctionnalités.
Bien que Git soit un outil en ligne de commande, GitHub fournit une interface graphique basée sur le web.
Il fournit également un contrôle d’accès et plusieurs fonctionnalités de collaboration, telles que les wikis et les outils de gestion des tâches essentiels pour chaque projet.
Quels sont les principaux avantages de l’utilisation de GitHub ? Presque chaque projet open source utilise GitHub pour gérer son projet.
L’utilisation de GitHub est gratuite si votre projet est open source et inclut un wiki et un suivi des problèmes, ce qui facilite l’obtention d’une documentation plus approfondie et obtenir des commentaires sur votre projet.
Quelles sont certaines des fonctionnalités proposées par GitHub ?
Automatisez du code vers le cloud : cyclez votre code de production plus rapidement et simplifiez votre flux de travail avec les packages GitHub et ci/CD intégrés à l’aide de GitHub Actions.
- Automatisez vos flux de travail : générez, testez, déployez et exécutez ci/CD comme vous le souhaitez dans le même endroit que vous gérez du code. Déclenchez des actions à partir de n’importe quel événement GitHub vers n’importe quelle API disponible. Générez vos actions dans la langue de votre choix, ou choisissez parmi des milliers de flux de travail et d’actions créés par la communauté.
- Paquets locaux avec leur code : utilisez Actions pour publier automatiquement de nouvelles versions de paquets sur GitHub Packages. Installez des packages et des images hébergés sur gitHub Packages ou votre registre de packages préférés dans vos flux de travail CI/CD. Il est toujours gratuit pour open source, et le transfert de données dans Actions est illimité pour tout le monde.
Sécurisation des logiciels ensemble : GitHub joue un rôle dans la sécurisation du code mondial : développeurs, maintenance, chercheurs et équipes de sécurité. Sur GitHub, les équipes de développement du monde entier peuvent travailler ensemble pour sécuriser la chaîne d'approvisionnement logicielle mondiale, depuis le fork jusqu'à la mise en production.
- Obtenez des alertes sur les vulnérabilités dans votre code : GitHub analyse en permanence les avis de sécurité pour les langues populaires. En outre, il envoie des alertes de sécurité aux gardiens de référentiels concernés avec des détails afin qu’ils puissent corriger les risques.
- Mettez automatiquement à jour les vulnérabilités : GitHub surveille vos dépendances de projet et ouvre automatiquement les demandes de tirage pour mettre à jour les dépendances vers la version minimale qui résout les vulnérabilités connues.
- Restez informé des CVE : restez à jour avec les dernières vulnérabilités et expositions courantes (CVE) et découvrez comment elles vous affectent avec la base de données de conseil GitHub.
- Recherchez les vulnérabilités manquées par d’autres outils : CodeQL est le moteur d’analyse de code sémantique de pointe du secteur. L’approche révolutionnaire de GitHub traite le code comme des données pour identifier les vulnérabilités de sécurité plus rapidement.
- Éliminer les variantes : Ne jamais faire la même erreur deux fois. L’analyse proactive des vulnérabilités empêche les vulnérabilités d’atteindre la production.
- Sécuriser vos jetons : vous avez commité un jeton dans un dépôt public par erreur ? GitHub assure vos arrières. Avec la prise en charge de 20 fournisseurs de services, GitHub prend des mesures pour vous assurer de la sécurité.
Révision transparente du code : la révision du code est le chemin d’accès le plus approprié au code et est fondamentale pour le fonctionnement de GitHub. Les outils de révision intégrés font de la révision du code une partie essentielle du processus de votre équipe.
- Proposer des modifications : un meilleur code commence par une pull request, une conversation vivante sur les changements où vous pouvez discuter des idées, affecter des tâches, discuter des détails et faire des revues.
- Demander des révisions : si vous êtes en position d'être examiné, vous pouvez solliciter des retours de vos collègues pour obtenir les retours détaillés dont vous avez besoin.
- Découvrez la différence : les révisions se produisent plus rapidement lorsque vous connaissez exactement les modifications. Les diffs comparent les versions de votre code source en mettant en évidence les parties nouvelles, modifiées ou supprimées.
- Commentaire dans le contexte : les discussions se produisent dans les threads de commentaires au sein de votre code : regroupez des commentaires dans une révision ou répondez à une autre personne qui est en ligne pour démarrer une conversation.
- Donnez des commentaires clairs : vos collègues ne doivent pas avoir à réfléchir trop dur sur ce qu’un emoji pouces-haut signifie. Spécifiez si vos commentaires sont des modifications requises ou seulement quelques suggestions.
- Protéger les branches : fusionner uniquement le code de qualité supérieure. Vous pouvez configurer des référentiels pour exiger des vérifications d’état, ce qui réduit les erreurs humaines et la surcharge administrative.
Tout votre code et documentation en un seul endroit : des centaines de millions de dépôts privés, publics et open source sont hébergés sur GitHub. Chaque référentiel dispose d'outils pour héberger, versionner et publier le code et la documentation.
- Code dans lequel vous collaborez : les référentiels conservent du code à un seul endroit et aident vos équipes à collaborer avec les outils qu’elles aiment, même si vous travaillez avec des fichiers volumineux à l’aide de Git LFS. Vous pouvez créer ou importer autant de projets que possible avec des dépôts privés illimités pour des individus et des groupes.
- Documentation en même temps que votre code : hébergez votre documentation directement à partir de vos dépôts avec GitHub Pages. Utilisez Jekyll comme générateur de sites statiques et publiez vos pages à partir du dossier /docs sur votre branche principale.
Gérez vos idées : coordonnez-vous au plus tôt, restez aligné et réalisez plus avec les outils de gestion de projets de GitHub.
- Affichez la grande image de votre projet : découvrez tout ce qui se passe dans votre projet et choisissez où concentrer les efforts de votre équipe avec les projets et les tableaux de tâches qui vivent directement là où ils appartiennent : près de votre code.
- Suivre et affecter des tâches : les problèmes vous aident à identifier, affecter et suivre les tâches au sein de votre équipe. Vous pouvez ouvrir un Problème pour effectuer le suivi d’un bogue, discuter d’une idée avec un @mention ou lancer la distribution du travail.
Le côté humain du logiciel : la création de logiciels est plus sur la gestion des équipes et des communautés que le codage. Qu’il s’agisse d’un groupe de deux ou 2000, GitHub a le support dont vos personnes ont besoin.
- Gérer et développer des équipes : aidez les personnes à organiser avec des équipes GitHub, à accéder aux rôles d’administration et à affiner vos autorisations avec les équipes imbriquées.
- Conserver les conversations : les outils de modération, tels que le verrouillage des demandes d’émission et de tirage, permettent à votre équipe de rester concentrée sur le code. Et si vous gérez un projet open source, le blocage des utilisateurs réduit le bruit et garantit des conversations productives.
- Définir les instructions de la communauté : définir les rôles et les attentes sans commencer à partir de zéro. Personnalisez les codes de conduite standard pour créer l’idéal pour votre projet. Choisissez ensuite une licence préécrite directement à partir de votre dépôt.
GitHub offre d’excellentes ressources d’apprentissage pour sa plateforme. Vous trouverez tout, de la formation d'introduction à Git à un approfondissement sur la publication de pages statiques sur GitHub et comment pratiquer le DevOps sur GitHub directement ici.