semantic-releaseのプレリリースブランチ設定

beta、alpha、nextブランチを含む複数リリースチャネルのsemantic-release設定。非mainブランチから1.0.0-beta.1のようなプレリリースバージョンを公開。

Basic Configuration

詳細な説明

マルチブランチプレリリース設定

semantic-releaseは複数のリリースチャネルをサポートし、mainの安定リリースを維持しながらフィーチャーブランチからプレリリースバージョンを公開できます。

設定

{
  "branches": [
    "main",
    {"name": "next", "prerelease": true},
    {"name": "beta", "prerelease": true},
    {"name": "alpha", "prerelease": true}
  ],
  "plugins": [
    "@semantic-release/commit-analyzer",
    "@semantic-release/release-notes-generator",
    "@semantic-release/npm",
    "@semantic-release/github"
  ]
}

プレリリースバージョンの仕組み

各ブランチは異なるバージョン番号を生成します:

ブランチ バージョン例 npmタグ
main 1.2.0 latest
next 1.3.0-next.1 next
beta 1.3.0-beta.1 beta
alpha 1.3.0-alpha.1 alpha

ディストリビューションタグ

npmに公開する際、各ブランチは独自のディストリビューションタグで公開されます。ユーザーは特定のチャネルを指定してインストールします:

npm install my-package            # latest (main)
npm install my-package@next       # nextチャネル
npm install my-package@beta       # betaチャネル

プロモーションフロー

機能はブランチを通じて流れます:alpha -> beta -> next -> main。nextをmainにマージすると、semantic-releaseはプレリリースバージョンから安定リリースを作成します。

ユースケース

段階的ロールアウトが必要なライブラリやフレームワーク向け。alphaでテスト、betaで安定化、安定リリースへのプロモーション。プレリリースフェーズでコミュニティフィードバックを収集するオープンソースプロジェクトに人気。

試してみる — Semantic Release Config Builder

フルツールを開く