You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* add workflow to automate release tagging
* don't create or update patch tags automatically
* add instructions for creating a release
* update readme examples for new versioning process
* add changesets for versioning
* revise release workflow to use changesets
* use different commit and title messages
* update development and release instructions
* add instructions for ensuring node and npm version
* clairfy getting started steps
Before you get started, we recommend installing [Node Version Manager](https://github.com/nvm-sh/nvm#installing-and-updating) to help manage `node` and `npm` versions. Next, from your local copy of the action run `nvm use` and `npm install`. You're ready to start coding!
6
+
7
+
## Git Workflows
8
+
9
+
We use the [feature branch workflow](https://www.atlassian.com/git/tutorials/comparing-workflows/feature-branch-workflow). The workflow for a typical code change looks like this:
10
+
11
+
1. Create a new branch for the feature.
12
+
2. Make changes to the code.
13
+
3. Use `npx changeset` to create a changeset describing the change to users.
14
+
4. Commit your changes.
15
+
5. Open a pull request to the `main` branch.
16
+
6. Once all checks are passing and the PR is approved, Squash and Merge into the `main` branch.
17
+
18
+
## Creating a release
19
+
20
+
We use [Changesets](https://github.com/changesets/changesets) to automate versioning and releasing. When you are ready to release, the first step is to create the new version.
21
+
22
+
1. Go to pull requests and view the "Version Action" PR.
23
+
2. Review the PR:
24
+
-[ ] Changelog entries were created.
25
+
-[ ] Version number in package.json was bumped.
26
+
-[ ] All `.changeset/*.md` files were removed.
27
+
3. Approve, then "Squash and merge" the PR into `main`.
28
+
29
+
Merging the versioning PR will run a workflow that creates or updates all necessary tags. The next step is to create a release in GitHub. This may be automated in the future, but for now the process is:
30
+
31
+
1. In GitHub, visit "Releases -> Draft new release"
32
+
2. In the "Choose a tag" dropdown, choose the tag you want to release. This is usually the most recently created patch tag (`v{MAJOR}.{MINOR}.{PATCH}`). Major/minor tags (i.e `v3` and `v3.0`) are only present to allow users to opt into automatic patch or minor version updates and should not be associated with a GitHub release.
33
+
3. Leave the target branch set to `main`.
34
+
4. Give the release a title. Typically, this will be identical to the release's tag name.
35
+
5. Copy the [CHANGLELOG.md](./CHANGELOG.md) entry for this release into the release body.
0 commit comments