40 lines
2.9 KiB
Markdown
40 lines
2.9 KiB
Markdown
---
|
|
title: Publishing a package
|
|
intro: 'You can publish a package to {% data variables.product.prodname_registry %} to make the package available for others to download and re-use.'
|
|
product: '{% data reusables.gated-features.packages %}'
|
|
redirect_from:
|
|
- /github/managing-packages-with-github-packages/publishing-a-package
|
|
- /packages/publishing-and-managing-packages/publishing-a-package
|
|
permissions: Anyone with write permissions for a repository can publish a package to that repository.
|
|
versions:
|
|
fpt: '*'
|
|
ghes: '*'
|
|
ghec: '*'
|
|
---
|
|
|
|
{% data reusables.package_registry.packages-ghes-release-stage %}
|
|
|
|
## About published packages
|
|
|
|
You can help people understand and use your package by providing a description and other details like installation and usage instructions on the package page. {% data variables.product.github %} provides metadata for each version, such as the publication date, download activity, and recent versions. For an example package page, see [@Codertocat/hello-world-npm](https://github.com/Codertocat/hello-world-npm/packages/10696?version=1.0.1).
|
|
|
|
{% data reusables.package_registry.public-or-private-packages %} A repository can be connected to more than one package. To prevent confusion, make sure the README and description clearly provide information about each package.
|
|
|
|
{% ifversion fpt or ghec %}
|
|
If a new version of a package fixes a security vulnerability, you should publish a security advisory in your repository. {% data variables.product.prodname_dotcom %} reviews each published security advisory and may use it to send {% data variables.product.prodname_dependabot_alerts %} to affected repositories. For more information, see [AUTOTITLE](/code-security/security-advisories/working-with-repository-security-advisories/about-repository-security-advisories).
|
|
{% endif %}
|
|
|
|
## Publishing a package
|
|
|
|
{% data reusables.package_registry.packages-classic-pat-only %}
|
|
|
|
You can publish a package to {% data variables.product.prodname_registry %} using any {% ifversion fpt or ghec %}supported package client{% else %}package type enabled for your instance{% endif %} by following the same general guidelines.
|
|
|
|
1. Create or use an existing {% data variables.product.pat_v1 %} with the appropriate scopes for the task you want to accomplish. For more information, see [AUTOTITLE](/packages/learn-github-packages/about-permissions-for-github-packages).
|
|
1. Authenticate to {% data variables.product.prodname_registry %} using your {% data variables.product.pat_v1 %} and the instructions for your package client.
|
|
1. Publish the package using the instructions for your package client.
|
|
|
|
For instructions specific to your package client, see [AUTOTITLE](/packages/working-with-a-github-packages-registry).
|
|
|
|
After you publish a package, you can view the package on {% data variables.product.prodname_dotcom %}. For more information, see [AUTOTITLE](/packages/learn-github-packages/viewing-packages).
|