Refer to the recommendations for versioning and releasing actions.
- From
mainbranch, runnpm run build && npm test --clean && npm run lintto make surelib/*.jsare up-to-date. - Update
CHANGELOG.md, push change with "Prepare for release X.Y.Z." (where X.Y.Z is the new version). - Create a new branch e.g.
release/v1, comment outnode_modules/in.gitignore, commit the change (do not commit yetnode_modules). - Run
npm prune --production. - Now commit the changes (the pruned
node_modules). - Push to remote.
- Test the new release:
- uses: org/repo@release/v1. - To release, create and push a new tag
v1pointing to the latest commit in the release branch. - Also create a new GitHub release with
1.0.0pointing to the head of the release branch which allows users to go back to an older version if there are issues with the latestv1. - To use the latest major version:
- uses: org/repo@v1.
- From
mainbranch, runnpm run build && npm test --clean && npm run lintto make surelib/*.jsare up-to-date. - Update
CHANGELOG.md, push change with "Prepare for release X.Y.Z." (where X.Y.Z is the new version). - Merge from
maininto the release branch e.g.release/v1. - Run
npm prune --production. - Commit merged changes (and the pruned
node_modules). - Push to remote.
- Test the new release:
- uses: org/repo@release/v1. - To release, move the existing tag
v1to the head of the release branch and push. - Also create a new GitHub release with
1.1.0(for new minor release) pointing to the head of the release branch which allows users to go back to an older version if there are issues with the latestv1. - To use the latest major version:
- uses: org/repo@v1.