diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 42b7a94586..ce6aab0dc8 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -208,19 +208,13 @@ Dependencies installation-related metrics base on publishing process, so the dat --- -## Versioning - -We use [changesets] to manage version. Currently, all Rsbuild packages will use a fixed unified version. - -The release notes are automatically generated by [GitHub releases](https://github.com/web-infra-dev/rsbuild/releases). - ## Releasing -Repository maintainers can publish a new version of all packages to npm. - -Here are the steps to publish (we generally use CI for releases and avoid publishing npm packages locally): +Repository maintainers can publish a new version of changed packages to npm. -1. [Create release pull request](https://github.com/web-infra-dev/rsbuild/actions/workflows/release-pull-request.yml). -2. [Run the release action](https://github.com/web-infra-dev/rsbuild/actions/workflows/release.yml). -3. [Generate the release notes](https://github.com/web-infra-dev/rsbuild/releases). -4. Merge the release pull request. +1. Checkout a new release branch, for example `release_v1.2.0` +2. Run [changesets](https://github.com/changesets/changesets) to bump changed packages and commit the changes. +3. Create a pull request, the title should be `release: v1.2.0`. +4. Run the [release action](https://github.com/web-infra-dev/rsbuild/actions/workflows/release.yml) to publish packages to npm. +5. Generate the [release notes](https://github.com/web-infra-dev/rsbuild/releases) via GitHub, see [Automatically generated release notes](https://docs.github.com/en/repositories/releasing-projects-on-github/automatically-generated-release-notes) +6. Merge the release pull request to `main`.