Перейти к основному содержимому
Версия: 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

Опубликовать все пакеты из workspace.

--json

Показывать вывод в JSON формате.

--tag <tag>

Опубликовать пакет с заданным тегом. По умолчанию pnpm publish обновляет тег latest.

Например:

# внутри каталога пакета foo
pnpm publish --tag next
# в проекте, где вы собираете использовать версию next пакета foo
pnpm add foo@next

--access <public|restricted>

Сообщает реестру, должен ли опубликованный пакет быть публичным или запрещенным.

--no-git-checks

Не проверять, является ли текущая ветка веткой публикации, а также наличие незакомиченных изменений и синхронизации с удалённым репозиторием.

--publish-branch <branch>

  • По умолчанию: master и main
  • Тип: String

Основная ветвь репозитория, которая используется для публикации последних изменений.

--force

Опубликовать пакеты, даже если их версии совпадают с теми, которые уже есть в реестре.

--report-summary

Сохранить список опубликованных пакетов в pnpm-publish-summary.json. Полезно, когда используется другая утилита для сообщения о списке опубликованных пакетов.

Пример файла pnpm-publish-summary.json:

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

--dry-run

Делает все, что должна сделать публикация пакета, за исключением самой публикации в реестре.

--otp

При публикации пакетов, требующих двухфакторной аутентификации, в этом параметре можно указать одноразовый пароль.

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

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

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

Вы также можете задать параметры git-checks, publish-branch в файле .npmrc.

Например:

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

Life Cycle Scripts

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