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-existence
checkout-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 runningbuild
script, 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 CHANGES
label - 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