メインコンテンツまでスキップ
Version: 7.x

pnpm publish

npm レジストリにパッケージを公開します。

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

ワークスペース内のパッケージを公開するとき、パッケージ自体にライセンスファイルが存在しなければ、ワークスペースの最上位に配置されたLICENSEファイルを同梱します。

package.jsonpublishConfigフィールドを使用して、公開するパッケージに含まれるいくつかのフィールドを上書きできます。 publishConfig.directoryで、公開するサブディレクトリを指定できます (サードパーティのビルドツールと共に使用する場合が多い) 。

このコマンドを再帰的に実行すると (pnpm -r publish)、 pnpm はレジストリに公開したバージョンの存在しない全てのパッケージを公開します。

Options

--recursive, -r

ワークスペースの全てのパッケージを公開します。

--json

JSON 形式で情報を表示します。

--tag <tag>

指定したタグでパッケージを公開します。 未指定の場合、pnpm publishlatest タグを更新します。

例:

# 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>

公開したパッケージを公開アクセス可能にするべきか、制限するべきかをレジストリに通知します。

--no-git-checks

現在のブランチがあなたの公開ブランチであるか、クリーンであるか、リモートの最新版であるかはチェックしません。

--publish-branch

  • デフォルト: mastermain
  • タイプ:文字列

最新の変更を公開するために使用する、リポジトリの基本ブランチ名を指定します。

--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

publish の機能をすべて実行しますが、レジストリに実際に公開は行いません。

--otp

2要素認証が必要なパッケージを公開する場合、このオプションでワンタイムパスワードを指定することができます。

--filter <package_selector>

詳細についてはフィルタリングに関するドキュメントを参照してください。

設定

.npmrcgit-checks オプションや publish-branch オプションを設定することもできます。

例:

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

ライフサイクルスクリプト

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