Skip to main content
バージョン: 9.x

pnpm publish

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

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

ワークスペース内でパッケージを公開する場合、ワークスペースのルートにあるLICENSEファイルがパッケージに同梱されます(パッケージ自体にライセンスがある場合を除く)。

package.jsonpublishConfigフィールドを使用して、公開前にいくつかのフィールドを上書きできます。publishConfig.directoryを使用して、公開するサブディレクトリをカスタマイズすることもできます(通常はサードパーティ製のビルドツールを使用します)。

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

オプション

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

  • デフォルト: master および main
  • タイプ: 文字列

最新の変更を公開するために使用されるリポジトリの主要ブランチ。

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

フィルタリングの詳細については、こちらをご覧ください。

設定

.npmrcファイルでgit-checkspublish-branchオプションを設定することもできます。

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

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

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