Introduction à GitHub

Effectué

GitHub rassemble la plus grande communauté open source du 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 examiner du code, gérer des projets et créer des logiciels en plus de 40 millions développeurs d’open source à l’entreprise.

GitHub est un service d’hébergement de dépôts Git qui ajoute un grand nombre de ses fonctionnalités.

Alors que Git est un outil en ligne de commande, GitHub fournit une interface graphique 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 comprend un wiki et un outil de suivi des problèmes, ce qui vous permet de disposer d’une documentation plus approfondie et d’obtenir des commentaires sur votre projet.

Quelles sont les fonctionnalités offertes par GitHub ?

  • Automatiser du code vers le cloud : accélérez votre code de production plus rapidement et simplifiez votre flux de travail avec des Packages GitHub et des éléments de configuration/CD intégrés à l’aide de GitHub Actions.

    • Automatiser vos workflows : créez, testez, déployez et exécutez CI/CD comme vous le voulez au même endroit où vous gérez le code. Déclencher des Actions à partir de n’importe quel événement GitHub vers n’importe quelle API disponible. Créer vos actions dans le langage de votre choix ou choisissez parmi des milliers de workflows et d’actions créés par la communauté.
    • Packages à la racine avec leur code : utilisez des Actions pour publier automatiquement de nouvelles versions de package sur GitHub Packages. Installez les packages et les 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 au sein des actions est illimité pour tout le monde.
  • Sécurisation conjointe des logiciels : GitHub joue un rôle dans la sécurisation du code du monde, à savoir les développeurs, les responsables de la maintenance, les chercheurs et les équipes de sécurité. Sur GitHub, les équipes de développement peuvent travailler ensemble pour sécuriser la chaîne d’approvisionnement de logiciels du monde, de la duplication (fork) à la fin.

    • Recevez des alertes sur les vulnérabilités dans votre code : GitHub analyse en continu les avis de sécurité pour les langues populaires. En outre, il envoie des alertes de sécurité aux détenteurs des dépôts affectés avec des détails pour qu’ils puissent corriger les risques.
    • Mettre à jour automatiquement les vulnérabilités : GitHub surveille vos dépendances de projet et ouvre automatiquement les requêtes de tirage pour mettre à jour les dépendances à la version minimale qui résout les vulnérabilités connues.
    • Rester informé des CVE : tenez-vous au courant des dernières vulnérabilités et expositions courantes (CVE), et découvrez comment elles vous affectent en utilisant GitHub Advisory Database.
    • Trouver les vulnérabilités que d’autres outils ne détectent pas : CodeQL est le moteur d’analyse de code sémantique leader du secteur. L’approche révolutionnaire de GitHub traite le code comme des données pour identifier plus rapidement les failles de sécurité.
    • É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 de 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 les mesures nécessaires pour garantir la sécurité.
  • Révision du code transparente : la révision du code est le chemin le plus approprié pour améliorer le code et est fondamentale pour le fonctionnement de GitHub. Les outils de révision intégrés permettent à la revue du code un élément essentiel du processus de votre équipe.

    • Propositions de modifications : un meilleur code commence par une demande de tirage (pull request), une conversation vivante sur les modifications dans laquelle vous pouvez discuter des idées, attribuer des tâches, discuter des détails et effectuer des révisions.
    • Révisions de demandes : Si vous êtes à l’autre extrémité d’une révision, vous pouvez demander des révisions à vos pairs pour obtenir les commentaires détaillés dont vous avez besoin.
    • Voir la différence : les révisions se produisent plus rapidement quand vous savez exactement ce qui change. Les diffs comparent les versions de votre code source en mettant en évidence les parties nouvelles, modifiées ou supprimées.
    • Commentaire en contexte : les discussions se produisent dans les threads de commentaires au sein de votre code. Regroupez les commentaires dans une révision ou répondez à une autre personne qui est en ligne pour démarrer une conversation.
    • Faites-nous part de vos commentaires : vos coéquipiers ne devraient pas avoir à se creuser la tête pour voir ce que signifie l’emoji avec le pouce levé. Spécifier si vos commentaires sont des modifications obligatoires ou des suggestions.
    • Protéger les branches : fusionner uniquement le code de qualité supérieure. Vous pouvez configurer des dépôts pour exiger des contrôles d’état, réduisant les erreurs humaines et les coûts administratifs.
  • Tout votre code et votre documentation se trouvent dans un emplacement unique : des centaines de millions de dépôts publics, privés et open source sont hébergés sur GitHub. Chaque dépôt a des outils pour aider votre code hôte, votre version et votre code de version et votre documentation.

    • Code où vous collaborez : les référentiels conservent du code dans un même emplacement et aident vos équipes à collaborer avec les outils qu’ils 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 un nombre illimité de dépôts privés pour les individus et les groupes.
    • Documentation en regard de votre code : hébergez votre documentation directement à partir de vos référentiels avec des Pages GitHub. Utilisez Jekyll en tant que générateur de site statique et publiez vos pages à partir du dossier /docs sur votre branche primaire.
  • Gérez vos idées : coordonnez-les tôt, restez aligné et faites-en plus avec les outils de gestion de projet de GitHub.

    • Reportez-vous à 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 se trouvent directement là où ils doivent être : près de votre code.
    • Suivre et affecter des tâches : les Problèmes vous aident à identifier, assigner et effectuer le suivi des 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 des logiciels : la création de logiciels tient plus de la gestion des équipes et des communautés que de la programmation. Que ce soit dans un groupe de deux ou 2 000, GitHub a le support dont vos utilisateurs ont besoin.

    • Gérer et développer les équipes : aidez les utilisateurs à organiser leur équipe GitHub, à accéder aux rôles administratifs 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 conservez un projet open source, le blocage des utilisateurs réduit les bruits et garantit la productivité des conversations.
    • Définir les recommandations de la communauté : définir des rôles et des attentes sans commencer à partir de zéro. Personnaliser les codes de réalisation standard pour créer l’outil parfait pour votre projet. Choisir ensuite une licence pré-écrite à partir de votre référentiel.

GitHub offre des ressources d’apprentissage exceptionnelles pour sa plateforme. Vous pouvez trouver tout ce qu’il faut savoir sur la publication des pages statiques pour GitHub, ainsi que sur la façon de DevOps sur GitHub ici.