[資訊] 自動化發佈: semantic-release

semantic-release
https://github.com/semantic-release/semantic-release

如何自動化 release 的流程?
https://blog.amowu.com/2017/01/how-to-automate-js-release.html

用工具思路來規範化 git commit message
https://github.com/pigcan/blog/issues/15

semantic-release 集成
https://zqblog.beaf.tech/semantic-release/

Git Commit Message Conventions
https://docs.google.com/document/d/1QrDFcIiPjSLDn3EL15IJygNPiHORgU1_OOAqWjiDU5Y/edit

semantic-release 指的就是遵循 semver 的 release 流程,它可以自動完成下列這些事:
1.當 code 被 push 或 merge PR 回 production branch (ex: master) 的時候
2.CI build 被觸發,semantic-release 會收集此次更新的所有 commit messages(需遵循 AngularJS Git Commit Message Conventions 的格式)
3.自動根據 semver 的規則來更新 package.json 的 version,並建立 Git tag
4.自動 publish 新版本的 package 到 npm registry(非必要)
5.自動在 GitHub releases 的頁面上,產生相對應的 changelog


#semantic-release, test, release, semver, 自動化, 發佈, 版本

留言