Check branch existence:
steps:
- uses: actions/checkout@v3
- id: branch
uses: release-kit/branch@v1
with:
branch: 'release'
action: 'check-existence'
- run: echo "${{ steps.branch.output.exists }}"Checkout branch or create when not exists:
steps:
- uses: actions/checkout@v3
- id: branch
uses: release-kit/branch@v1
with:
branch: 'release'
action: 'checkout-or-create'branch- a git branch nameaction- an action to perform with branchcheck-existencecheckout-or-create
exists- branch existence
- Fork this repo
- Use the Regular flow
Please follow Conventions
The dev branch is main - any developer changes is merged in there.
All changes is made using Pull Requests - push is forbidden. PR can be merged only after successfull test-and-build workflow checks.
When PR is merged, release-drafter workflow creates/updates a draft release. The changelog is built from the merged branch scope (feat, fix, etc) and PR title. When release is ready - we publish the draft.
Then, the update-major-tag workflow sets an additional tag for your major version, so your action can be used like scope/action@v1 instead of explicitly specifying v1.0.0 version.
- Create feature branch
- Make changes in your feature branch and commit
You may omit runningbuildscript, since the pre-commit hook does it automatically - Create a Pull Request from your feature branch to
main
The PR is needed to test the code before pushing to release branch - If your PR contains breaking changes, don't forget to put a
BREAKING CHANGESlabel - Merge the PR in
main - All done! Now you have a drafted release - just publish it when ready
Feature branches:
- Should start with
feat/,fix/,docs/,refactor/, and etc., depending on the changes you want to propose (see pr-labeler.yml for a full list of scopes)
Commits:
- Should follow the Conventional Commits specification
Pull requests:
- Should have human-readable name, for example: "Add a TODO list feature"
- Should describe changes
- Should have correct labels