跳到主内容
版本:6.x

pnpm publish

发布一个包到注册表。

pnpm [-r] publish [<tarball|folder>] [--tag <tag>]
[--access <public|restricted>]

当在一个工作空间内发布时,工作空间根目录的 LICENSE 文件将和package 一起打包。(除非package有专属的许可证)

您可以在发布之前使用 package.json publishConfig 字段覆盖某些字段。 您还可以使用 publishConfig.directory 自定义发布的子目录(通常使用第三方构建工具)。

递归运行此命令时 (pnpm -r publish),pnpm 将发布所有版本尚未发布到注册表的package

配置项

--tag <tag>

使用给定的tag 发布package。 默认情况下, pnpm publish 会更新 latesttag

例如:

#在 foo 包目录
pnpm publish --tag next
# 在项目中,你想用 foo 的 next 版本
pnpm add foo@next

--access <public|restricted>

通知注册表所发布的package是公开的还是受限制的。

git-checks

添加于:v4.11.0

  • 默认值: true(自 v5 起)
  • 类型:Boolean

如果为 true, pnpm publish会检查你当前的分支是否是发布分支(默认是 master),是否是干净、最新的。

publish-branch

添加于:v4.11.0

  • 默认值: master
  • 类型: String

用于发布最新更改的仓库的主分支。

--force

添加于:v5.18.0

尝试发布 packages,即使在注册表中的版本已存在。

--report-summary

添加于:v6.5.0

将已发布的packages的列表保存到 pnpm-publish-summary.json。 这在使用其他一些工具来报告已发布packages的列表时很有用。

--filter <package_selector>

添加于:v4.6.0

阅读更多有关 filter 的内容。