{"meta":{"title":"Introduction aux packages GitHub","intro":"GitHub Packages est un service d’hébergement de packages logiciels qui vous permet d’héberger vos packages logiciels en privé ou publiquement et d’utiliser des packages comme dépendances dans vos projets.","product":"GitHub Packages","breadcrumbs":[{"href":"/fr/enterprise-server@3.22/packages","title":"GitHub Packages"},{"href":"/fr/enterprise-server@3.22/packages/learn-github-packages","title":"Découvrir GitHub Packages"},{"href":"/fr/enterprise-server@3.22/packages/learn-github-packages/introduction-to-github-packages","title":"Introduction"}],"documentType":"article"},"body":"# Introduction aux packages GitHub\n\nGitHub Packages est un service d’hébergement de packages logiciels qui vous permet d’héberger vos packages logiciels en privé ou publiquement et d’utiliser des packages comme dépendances dans vos projets.\n\n<!-- 2148AF7B-5FF8-4B28-A808-D692FEE2225A -->\n\n## À propos de GitHub Packages\n\nGitHub Packages est une plateforme permettant d’héberger et de gérer des packages, y compris des conteneurs et d’autres dépendances.\nGitHub Packages combine votre code source et vos packages à un emplacement unique pour fournir la gestion des autorisations intégrées, afin de centraliser votre développement logiciel sur GitHub.\n\nVous pouvez intégrer GitHub Packages avec les API de GitHub, GitHub Actions, et les webhooks pour créer un workflow DevOps de bout en bout qui inclut votre code, votre intégration continue et vos solutions de déploiement.\n\nGitHub Packages offre différents registres de packages pour les gestionnaires de packages couramment utilisés, tels que npm, RubyGems, Apache Maven, Gradle, Docker et NuGet.\nPour plus d’informations sur les différents registres de packages pris GitHub Packages en charge, consultez [Utilisation d’un registre GitHub Packages](/fr/enterprise-server@3.22/packages/working-with-a-github-packages-registry).\n\nVous pouvez afficher le fichier README d’un package, ainsi que les métadonnées telles que les licences, les statistiques de téléchargement, l’historique des versions, etc GitHub. Pour plus d’informations, consultez « [Affichage de packages](/fr/enterprise-server@3.22/packages/learn-github-packages/viewing-packages) ».\n\nPour plus d’informations sur la configuration de GitHub Packages sur GitHub Enterprise Server, consultez [Prise en main des packages GitHub pour votre entreprise](/fr/enterprise-server@3.22/admin/configuring-packages/getting-started-with-github-packages-for-your-enterprise).\n\n### Vue d’ensemble des autorisations d’un package\n\nLes autorisations d’un package sont héritées du dépôt dans lequel le package est hébergé, ou peuvent être définies pour des utilisateurs ou des organisations spécifiques. Certains registres prennent uniquement en charge les autorisations héritées d’un dépôt. Pour obtenir la liste de ces registres, consultez [À propos des autorisations pour les packages GitHub](/fr/enterprise-server@3.22/packages/learn-github-packages/about-permissions-for-github-packages#permissions-for-repository-scoped-packages). Pour plus d’informations sur l’accès aux packages, consultez [Configuration du contrôle d’accès et de la visibilité d’un package](/fr/enterprise-server@3.22/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility).\n\n### Vue d’ensemble de la visibilité d’un package\n\nVous pouvez publier des packages dans un référentiel public (packages publics) à partager avec tout le monde dans votre entreprise, ou dans un référentiel privé (packages privés) à partager avec des collaborateurs ou une organisation.\n\n## Clients et formats pris en charge\n\n<!-- If you make changes to this feature, check whether any of the changes affect languages listed in /get-started/learning-about-github/github-language-support. If so, please update the language support article accordingly. -->\n\nGitHub Packages utilise les commandes d’outils de package natives que vous connaissez déjà pour publier et installer des versions de package.\n\n### Prise en charge des registres de packages\n\n| Langage                                       | Description                                                  | Format du package | Client de package |\n| --------------------------------------------- | ------------------------------------------------------------ | ----------------- | ----------------- |\n| JavaScript                                    | Gestionnaire de paquets npm                                  | `package.json`    | `npm`             |\n| Ruby                                          | Gestionnaire de package RubyGems                             | `Gemfile`         | `gem`             |\n| Java                                          | Outil de gestion de projets et de compréhension Apache Maven | `pom.xml`         | `mvn`             |\n| Java                                          | Outil d’automatisation de construction Gradle pour Java      |                   |                   |\n| `build.gradle` ou `build.gradle.kts`          | `gradle`                                                     |                   |                   |\n| .NET                                          | Gestion des packages NuGet pour .NET                         | `nupkg`           |                   |\n| `dotnet` Interface en Ligne de Commande (CLI) |                                                              |                   |                   |\n| N/A                                           | Gestion des conteneurs Docker                                | `Dockerfile`      | `Docker`          |\n\n> \\[!NOTE]\n> Lorsque vous activez le registre Docker, nous vous recommandons vivement d’activer également l’isolation des sous-domaines. Pour plus d’informations, consultez « [Activation de l’isolation de sous-domaine](/fr/enterprise-server@3.22/admin/configuring-settings/hardening-security-for-your-enterprise/enabling-subdomain-isolation) ».\n\nPour plus d’informations sur la configuration de votre client de package à utiliser avec GitHub Packages, consultez [Utilisation d’un registre GitHub Packages](/fr/enterprise-server@3.22/packages/working-with-a-github-packages-registry).\n\n## Authentification à GitHub Packages\n\n> \\[!NOTE]\n> GitHub Packages prend uniquement en charge l’authentification à l’aide d’un personal access token (classic). Pour plus d’informations, consultez « [Gestion de vos jetons d’accès personnels](/fr/enterprise-server@3.22/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens) ».\n\nVous avez besoin d’un jeton d’accès pour publier, installer et supprimer des packages privés, internes et publics.\n\nVous pouvez utiliser un personal access token (classic) pour vous authentifier auprès de GitHub Packages ou de l’API GitHub. Quand vous créez un personal access token (classic), vous pouvez l’attribuer à différentes étendues selon vos besoins. Pour plus d’informations sur les étendues liées aux packages pour un personal access token (classic), consultez [À propos des autorisations pour les packages GitHub](/fr/enterprise-server@3.22/packages/learn-github-packages/about-permissions-for-github-packages#about-scopes-and-permissions-for-package-registries).\n\nPour vous authentifier sur un registre GitHub Packages dans un workflow GitHub Actions, vous pouvez utiliser :\n\n* `GITHUB_TOKEN` pour publier des packages associés au dépôt du workflow.\n* Un personal access token (classic) avec au moins `read:packages` la possibilité d'installer des paquets associés à d'autres référentiels privés (`GITHUB_TOKEN` peut être utilisé si le référentiel a un accès en lecture au paquet. Consultez [Configuration du contrôle d’accès et de la visibilité d’un package](/fr/enterprise-server@3.22/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility).\n\nPour plus d’informations sur l’utilisation `GITHUB_TOKEN` dans GitHub Actions les flux de travail, consultez [Utiliser GITHUB\\_TOKEN pour l’authentification dans les flux de travail](/fr/enterprise-server@3.22/actions/tutorials/authenticate-with-github_token#using-the-github_token-in-a-workflow).\n\n## Gérer les packages\n\nVous pouvez supprimer un package dans l’interface GitHub utilisateur ou à l’aide de l’API REST. Pour plus d'informations, voir [Suppression et restauration d'un package](/fr/enterprise-server@3.22/packages/learn-github-packages/deleting-and-restoring-a-package) et [Points de terminaison d’API REST pour les packages](/fr/enterprise-server@3.22/rest/packages). Pour certains registres, vous pouvez utiliser GraphQL pour supprimer une version d'un paquet privé.\n\nVous ne pouvez pas utiliser l'API GraphQL GitHub Packages GraphQL avec les registres qui prennent en charge les autorisations granulaires. Pour les registres qui prennent **uniquement** en charge les autorisations limitées au référentiel et qui peuvent être utilisés avec l’API GraphQL, consultez [À propos des autorisations pour les packages GitHub](/fr/enterprise-server@3.22/packages/learn-github-packages/about-permissions-for-github-packages#permissions-for-repository-scoped-packages).\n\nLorsque vous utilisez l’API GraphQL pour interroger et supprimer des packages privés, vous devez utiliser le même personal access token (classic) que celui que vous utilisez pour vous authentifier auprès GitHub Packagesde .\n\nPour plus d’informations, consultez [Suppression et restauration d'un package](/fr/enterprise-server@3.22/packages/learn-github-packages/deleting-and-restoring-a-package) et [Création d’appels avec GraphQL](/fr/enterprise-server@3.22/graphql/guides/forming-calls-with-graphql).\n\nVous pouvez configurer des webhooks pour vous abonner à des événements liés à un package, par exemple lorsqu’un package est publié ou mis à jour. Pour plus d’informations, consultez [Événements et charges utiles du webhook](/fr/enterprise-server@3.22/webhooks/webhook-events-and-payloads#package).\n\n## Contact du support\n\nSi vous avez besoin de support pour GitHub Packages, contactez les administrateurs de votre site."}