{"id":5303,"date":"2025-07-23T12:22:03","date_gmt":"2025-07-23T12:22:03","guid":{"rendered":"https:\/\/techhub.saworks.io\/docs\/tutoriel-github\/automatisez-votre-workflow-avec-github-actions-partie-2-sur-2\/quest-ce-que-github-packages\/"},"modified":"2025-07-25T15:59:29","modified_gmt":"2025-07-25T15:59:29","slug":"quest-ce-que-github-packages","status":"publish","type":"docs","link":"https:\/\/techhub.saworks.io\/fr\/docs\/tutoriel-github\/automatisez-votre-workflow-avec-github-actions-partie-2-sur-2\/quest-ce-que-github-packages\/","title":{"rendered":"Qu\u2019est-ce que GitHub Packages ?"},"content":{"rendered":"\n<div class=\"wp-block-group is-layout-constrained wp-block-group-is-layout-constrained\">\n<p><strong>GitHub Packages<\/strong>&nbsp;est un service de gestion de paquets qui facilite la publication de paquets publics ou priv\u00e9s \u00e0 c\u00f4t\u00e9 de votre code source.<\/p>\n\n\n\n<div class=\"wp-block-group has-background is-layout-constrained wp-block-group-is-layout-constrained\" style=\"border-width:1px;border-radius:15px;background-color:#9b51e04d\">\n<p><strong>Remarque<\/strong><\/p>\n\n\n\n<p>Si vous ne connaissez pas encore GitHub, consultez le module&nbsp;<a href=\"https:\/\/techhub.saworks.io\/fr\/docs\/tutoriel-github\/les-bases-de-github-partie-1-sur-2\/\">Introduction \u00e0 GitHub<\/a>.<\/p>\n<\/div>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>GitHub Packages est un registre de paquets<\/strong><\/h3>\n\n\n\n<p>GitHub Packages vous permet de partager les d\u00e9pendances de votre projet au sein de votre organisation ou publiquement.<\/p>\n\n\n\n<p>Lorsque vous travaillez sur un projet avec des d\u00e9pendances de paquets, il est essentiel de pouvoir leur faire confiance, de comprendre leur code et de vous connecter \u00e0 la communaut\u00e9 qui les a cr\u00e9\u00e9s. Au sein d\u2019une organisation, il est \u00e9galement important de pouvoir identifier rapidement ce qui a \u00e9t\u00e9 approuv\u00e9 pour votre usage.<\/p>\n\n\n\n<p>GitHub Packages utilise la m\u00eame interface GitHub famili\u00e8re pour rechercher des paquets publics sur l\u2019ensemble de GitHub, ou des paquets priv\u00e9s au sein de votre organisation ou de vos d\u00e9p\u00f4ts.<\/p>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Un gestionnaire de paquets standard<\/strong><\/h3>\n\n\n\n<p>GitHub Packages est compatible avec les clients de gestion de paquets courants, ce qui vous permet de publier des paquets avec les outils de votre choix. Si votre d\u00e9p\u00f4t est plus complexe, vous pouvez publier plusieurs paquets de types diff\u00e9rents. Vous pouvez \u00e9galement utiliser des&nbsp;<strong>webhooks<\/strong>&nbsp;ou&nbsp;<strong>GitHub Actions<\/strong>&nbsp;pour personnaliser enti\u00e8rement vos workflows de publication et post-publication.<\/p>\n\n\n\n<p>Vous publiez un paquet open source ? De nombreux projets open source h\u00e9bergent leur code sur GitHub, ce qui vous permet de publier des versions pr\u00e9liminaires de vos paquets pour les tester au sein de votre communaut\u00e9, puis de promouvoir facilement certaines versions vers le registre public de votre choix.<\/p>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"962\" height=\"702\" data-src=\"https:\/\/techhub.saworks.io\/wp-content\/uploads\/2025\/07\/2-github-packages-npm-package-1.png\" alt=\"\" class=\"wp-image-5309 lazyload\" data-srcset=\"https:\/\/techhub.saworks.io\/wp-content\/uploads\/2025\/07\/2-github-packages-npm-package-1.png 962w, https:\/\/techhub.saworks.io\/wp-content\/uploads\/2025\/07\/2-github-packages-npm-package-1-300x219.png 300w, https:\/\/techhub.saworks.io\/wp-content\/uploads\/2025\/07\/2-github-packages-npm-package-1-768x560.png 768w\" data-sizes=\"(max-width: 962px) 100vw, 962px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 962px; --smush-placeholder-aspect-ratio: 962\/702;\" \/><\/figure>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Compatibilit\u00e9 de GitHub Packages avec les gestionnaires de paquets<\/strong><\/h3>\n\n\n\n<p>Au moment de la r\u00e9daction,&nbsp;<strong>GitHub Packages<\/strong>&nbsp;est compatible avec les gestionnaires de paquets suivants :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>npm<\/strong>, le gestionnaire de paquets pour NodeJS<\/li>\n\n\n\n<li><strong>NuGet<\/strong>, le gestionnaire de paquets pour .NET<\/li>\n\n\n\n<li><strong>RubyGems<\/strong>, le gestionnaire de paquets pour Ruby<\/li>\n\n\n\n<li><strong>Maven<\/strong>&nbsp;et&nbsp;<strong>Gradle<\/strong>, deux gestionnaires de paquets pour Java<\/li>\n<\/ul>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>GitHub Packages est aussi un registre de conteneurs<\/strong><\/h3>\n\n\n\n<p>Des applications compl\u00e8tes aux utilitaires en ligne de commande (CLI), les&nbsp;<strong>conteneurs<\/strong>&nbsp;sont une autre mani\u00e8re de distribuer du code. GitHub Packages permet de publier et de distribuer des&nbsp;<strong>images de conteneurs<\/strong>. Une fois publi\u00e9es (publiquement ou en priv\u00e9), ces images peuvent \u00eatre utilis\u00e9es depuis n\u2019importe o\u00f9, notamment :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Dans votre environnement de d\u00e9veloppement local<\/li>\n\n\n\n<li>Comme image de base dans votre environnement de d\u00e9veloppement&nbsp;<strong>GitHub Codespaces<\/strong><\/li>\n\n\n\n<li>Comme \u00e9tape \u00e0 ex\u00e9cuter dans votre workflow&nbsp;<strong>CI\/CD (Int\u00e9gration Continue \/ D\u00e9ploiement Continu)<\/strong>&nbsp;avec&nbsp;<strong>GitHub Actions<\/strong><\/li>\n\n\n\n<li>Sur un serveur ou un service cloud<\/li>\n<\/ul>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"962\" height=\"702\" data-src=\"https:\/\/techhub.saworks.io\/wp-content\/uploads\/2025\/07\/2-github-packages-docker-image.png\" alt=\"\" class=\"wp-image-5311 lazyload\" data-srcset=\"https:\/\/techhub.saworks.io\/wp-content\/uploads\/2025\/07\/2-github-packages-docker-image.png 962w, https:\/\/techhub.saworks.io\/wp-content\/uploads\/2025\/07\/2-github-packages-docker-image-300x219.png 300w, https:\/\/techhub.saworks.io\/wp-content\/uploads\/2025\/07\/2-github-packages-docker-image-768x560.png 768w\" data-sizes=\"(max-width: 962px) 100vw, 962px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 962px; --smush-placeholder-aspect-ratio: 962\/702;\" \/><\/figure>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Comparer GitHub Packages \u00e0 GitHub Releases<\/strong><\/h3>\n\n\n\n<p><strong>GitHub Packages<\/strong>&nbsp;est utilis\u00e9 pour publier des versions de vos biblioth\u00e8ques dans un flux de paquets standard ou un registre de conteneurs. Il est con\u00e7u pour tirer parti du fonctionnement sp\u00e9cifique du gestionnaire de paquets utilis\u00e9, comme le lien vers le d\u00e9p\u00f4t dans lequel le paquet a \u00e9t\u00e9 cr\u00e9\u00e9, ainsi que la version du code utilis\u00e9e.<\/p>\n\n\n\n<p><strong>GitHub Releases<\/strong>, quant \u00e0 lui, est utilis\u00e9 pour publier un ensemble de logiciels empaquet\u00e9s, accompagn\u00e9s de notes de version et de liens vers des fichiers binaires. Vous pouvez t\u00e9l\u00e9charger ces versions directement via une URL unique et les relier au commit sp\u00e9cifique \u00e0 partir duquel elles ont \u00e9t\u00e9 cr\u00e9\u00e9es. Les t\u00e9l\u00e9chargements se font uniquement sous forme d\u2019archives&nbsp;<strong>tarball<\/strong>&nbsp;ou&nbsp;<strong>ZIP<\/strong>.<\/p>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Identit\u00e9 et autorisations unifi\u00e9es<\/strong><\/h3>\n\n\n\n<p>Imaginons que vous travaillez sur un projet h\u00e9berg\u00e9 sur GitHub : JavaScript pour le front-end avec&nbsp;<strong>npm<\/strong>, et Java pour le back-end. Vous devez alors g\u00e9rer au moins trois ensembles diff\u00e9rents d\u2019identifiants et d\u2019autorisations : pour Git, npm et les d\u00e9p\u00f4ts Maven.<\/p>\n\n\n\n<p>Avec&nbsp;<strong>GitHub Packages<\/strong>, vous pouvez utiliser un&nbsp;<strong>seul ensemble d\u2019identifiants<\/strong>&nbsp;pour votre d\u00e9p\u00f4t de code source, votre registre npm priv\u00e9, et votre registre Maven ou Gradle priv\u00e9. Les paquets publi\u00e9s via GitHub h\u00e9ritent de la&nbsp;<strong>visibilit\u00e9 et des autorisations<\/strong>&nbsp;d\u00e9finies au niveau du d\u00e9p\u00f4t. Un nouveau membre de l\u2019\u00e9quipe a besoin d\u2019un acc\u00e8s en lecture au paquet et \u00e0 son code ? Donnez-lui simplement un acc\u00e8s en lecture au d\u00e9p\u00f4t, et c\u2019est r\u00e9gl\u00e9 !<\/p>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Construire et publier des paquets depuis GitHub<\/strong><\/h3>\n\n\n\n<p><strong>GitHub Actions<\/strong>&nbsp;est une autre fonctionnalit\u00e9 de GitHub qui permet d\u2019automatiser vos workflows logiciels. Vous pouvez&nbsp;<strong>compiler, tester et d\u00e9ployer<\/strong>&nbsp;votre code directement depuis GitHub.<\/p>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<div class=\"wp-block-group has-background is-layout-constrained wp-block-group-is-layout-constrained\" style=\"background-color:#fcb90054\">\n<h3 class=\"wp-block-heading\">\ud83d\udca1&nbsp;<strong>Astuce<\/strong><\/h3>\n\n\n\n<p>Si vous souhaitez en savoir plus sur GitHub Actions, consultez le module&nbsp;<em>Cr\u00e9er des workflows d\u2019int\u00e9gration continue (CI) avec GitHub Actions<\/em>.<\/p>\n<\/div>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>En combinant&nbsp;<strong>GitHub Actions<\/strong>&nbsp;et&nbsp;<strong>GitHub Packages<\/strong>, vous pouvez cr\u00e9er un workflow qui compile et teste votre code, puis le publie sur GitHub Packages simplement en poussant du code dans votre d\u00e9p\u00f4t.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<p>Dans la prochaine unit\u00e9, nous apprendrons \u00e0 utiliser ce workflow pour publier sur&nbsp;<strong>GitHub Packages<\/strong>&nbsp;et le&nbsp;<strong>GitHub Container Registry<\/strong>.<\/p>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>GitHub Packages&nbsp;est un service de gestion de paquets qui facilite la publication de paquets publics ou priv\u00e9s \u00e0 c\u00f4t\u00e9 de votre code source. [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"parent":5295,"menu_order":3,"comment_status":"closed","ping_status":"closed","template":"","doc_tag":[],"doc_badge":[],"class_list":["post-5303","docs","type-docs","status-publish","hentry"],"author_avatar":"https:\/\/secure.gravatar.com\/avatar\/6a70e7c73db9f245e650948d09d74f61?s=96&d=mm&r=g","author_name":"Annick N'dri","_links":{"self":[{"href":"https:\/\/techhub.saworks.io\/fr\/wp-json\/wp\/v2\/docs\/5303"}],"collection":[{"href":"https:\/\/techhub.saworks.io\/fr\/wp-json\/wp\/v2\/docs"}],"about":[{"href":"https:\/\/techhub.saworks.io\/fr\/wp-json\/wp\/v2\/types\/docs"}],"author":[{"embeddable":true,"href":"https:\/\/techhub.saworks.io\/fr\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/techhub.saworks.io\/fr\/wp-json\/wp\/v2\/comments?post=5303"}],"version-history":[{"count":0,"href":"https:\/\/techhub.saworks.io\/fr\/wp-json\/wp\/v2\/docs\/5303\/revisions"}],"up":[{"embeddable":true,"href":"https:\/\/techhub.saworks.io\/fr\/wp-json\/wp\/v2\/docs\/5295"}],"wp:attachment":[{"href":"https:\/\/techhub.saworks.io\/fr\/wp-json\/wp\/v2\/media?parent=5303"}],"wp:term":[{"taxonomy":"doc_tag","embeddable":true,"href":"https:\/\/techhub.saworks.io\/fr\/wp-json\/wp\/v2\/doc_tag?post=5303"},{"taxonomy":"doc_badge","embeddable":true,"href":"https:\/\/techhub.saworks.io\/fr\/wp-json\/wp\/v2\/doc_badge?post=5303"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}