s8sg / goflow

A Golang based high performance, scalable and distributed workflow framework
MIT License
1.06k stars 129 forks source link

feat(ci): add ci for auto release #43

Closed asjdf closed 1 year ago

asjdf commented 1 year ago

First of all sorry for the late reply.

In this pr, I hope to introduce an automated release process for the project, aiming to reduce the workload of the release, and at the same time make it easier for other developers to freely choose and switch between the development version, alpha version, beta version, and official version.

Below I will introduce the specific usage details of the automatic release introduced by this PR.

  1. If someone wants to make a new feature, he should make a new branch which name can't be dev, alpha or beta.
  2. Commit with the correct title which should follow the rule down below.
  3. After development, he should make a pull request to merge the branch into the dev branch (or merge directly).
  4. After merging, the release workflow will auto-release a new dev version of this project.
  5. We can do the same progress to release the main, alpha or beta version.
Commit message Release type
fix(pencil): stop graphite breaking when too much pressure applied Patch Fix Release
feat(pencil): add 'graphiteWidth' option Minor Feature Release
perf(pencil): remove graphiteWidth option

BREAKING CHANGE: The graphiteWidth option has been removed.
The default graphite width of 10mm is always used for performance reasons.
Major Breaking Release
(Note that the BREAKING CHANGE: token must be in the footer of the commit)

Thanks for your review ❤.

Best regards, Asjdf