Перейти к основному содержимому
Версия: 8.x

pnpm publish

Публикует пакет в реестр.

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

При публикации пакета внутри рабочей области workspace файл ЛИЦЕНЗИИ из корня рабочей области упаковывается вместе с пакетом (если пакет не имеет собственной лицензии).

Вы можете переопределить некоторые поля перед публикацией, используя поле publishConfig в package.json. Вы также можете использовать publishConfig.directory для настройки опубликованного подкаталога (обычно с помощью сторонних инструментов сборки).

При рекурсивном выполнении этой команды (pnpm -r publish) pnpm опубликует все пакеты, версии которых еще не опубликованы в реестре.

Опции

--recursive, -r

Publish all packages from the workspace.

--json

Show information in JSON format.

--tag <tag>

Publishes the package with the given tag. By default, pnpm publish updates the latest tag.

For example:

# inside the foo package directory
pnpm publish --tag next
# in a project where you want to use the next version of foo
pnpm add foo@next

--access <public|restricted>

Tells the registry whether the published package should be public or restricted.

--no-git-checks

Don't check if current branch is your publish branch, clean, and up-to-date with remote.

--publish-branch <branch>

  • Default: master and main
  • Тип: String

The primary branch of the repository which is used for publishing the latest changes.

--force

Try to publish packages even if their current version is already found in the registry.

--report-summary

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.

An example of a pnpm-publish-summary.json file:

{
"publishedPackages": [
{
"name": "foo",
"version": "1.0.0"
},
{
"name": "bar",
"version": "2.0.0"
}
]
}

--dry-run

Does everything a publish would do except actually publishing to the registry.

--otp

When publishing packages that require two-factor authentication, this option can specify a one-time password.

--filter <селектор пакета>

Подробнее о фильтрации.

Конфигурация

You can also set git-checks, publish-branch options in the .npmrc file.

For example:

.npmrc
git-checks=false
publish-branch=production

Life Cycle Scripts

  • prepublishOnly
  • prepublish
  • prepack
  • prepare
  • postpack
  • publish
  • postpublish