Skip to main content

This version of GitHub Enterprise Server was discontinued on 2023-09-25. No patch releases will be made, even for critical security issues. For better performance, improved security, and new features, upgrade to the latest version of GitHub Enterprise Server. For help with the upgrade, contact GitHub Enterprise support.

Publishing a package

You can publish a package to GitHub Packages to make the package available for others to download and re-use.

Who can use this feature

Anyone with write permissions for a repository can publish a package to that repository.

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. GitHub Enterprise Server 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.

You can publish packages in a public repository (public packages) to share with everyone on your enterprise, or in a private repository (private packages) to share with collaborators or an organization. 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.

Publishing a package

You can publish a package to GitHub Packages using any package type enabled for your instance by following the same general guidelines.

  1. Create or use an existing personal access token with the appropriate scopes for the task you want to accomplish. For more information, see "About permissions for GitHub Packages."
  2. Authenticate to GitHub Packages using your personal access token and the instructions for your package client.
  3. Publish the package using the instructions for your package client.

For instructions specific to your package client, see "Working with a GitHub Packages registry."

After you publish a package, you can view the package on GitHub. For more information, see "Viewing packages."