pnpm publish
Publishes a package to the registry.
pnpm [-r] publish [<tarball|folder>] [--tag <tag>] [--access <public|restricted>]
When publishing a package inside a workspace, the LICENSE file from the root of the workspace is packed with the package (unless the package has a license of its own).
You may override some fields before publish, using the
publishConfig field in package.json
.
You also can use the publishConfig.directory
to customize the published subdirectory (usually using third party build tools).
When running this command recursively (pnpm -r publish
), pnpm will publish all
the packages that have versions not yet published to the registry.
#
Options#
--tag <tag>Publishes the package with the given tag. By default, pnpm publish
updates
the latest
tag.
For example:
# inside the foo package directorypnpm publish --tag next# in a project where you want to use the next version of foopnpm add foo@next
#
--access <public|restricted>Tells the registry whether the published package should be public or restricted.
#
git-checksAdded in: v4.11.0
- Default : true (since v5)
- Type: Boolean
When true, pnpm publish
checks if the current branch is your publish branch
(master by default), clean, and up-to-date.
#
publish-branchAdded in: v4.11.0
- Default: master
- Types: String
The primary branch of the repository which is used for publishing the latest changes.
#
--forceAdded in: v5.18.0
Try to publish packages even if their current version is already found in the registry.
#
--report-summaryAdded in: v6.5.0
Save the list of published packages to pnpm-publish-summary.json
. Useful when some other tooling is used to report the list of published packages.
#
--filter <package_selector>Added in: 4.6.0