参考链接:https://juejin.im/post/5bd2debfe51d457abc710b57
Commitizen — 自动生成合格的 commit message
根据上述的描述,你是不是在感慨写个 commit message
好麻烦,这里介绍下 Commitizen
— 能够根据提示自动生成符合规范的 commit message
安装
$ npm install -g commitizen
复制代码
在项目中使用
然后,在项目目录里,运行下面的命令,使其支持 Angular
的 Commit message
格式。
$ commitizen init cz-conventional-changelog --save --save-exact
复制代码
commit
在提交的时候就可以使用 git cz
就可以根据提示,生成自动化的 commit message
validate-commit-msg
检查你的 commit-message
规范
Commitizen
可以帮助我们规范自己的 commit-message
,但是在团队合作中,如何规范其他成员的 commit
规范呢?
可以使用 validate-commit-msg
来检查你的项目的 commit-message
是否符合格式
validate-commit-msg
安装
npm install --save-dev validate-commit-msg
复制代码
husky
安装
按照 validate-commit-msg 中 README 中写的,可以用 validate-commit-msg
作为一个 githook 来验证提交消息,并且推荐了 husky
。
This provides you a binary that you can use as a githook to validate the commit message. I recommend husky. You’ll want to make this part of the commit-msg githook, e.g. when using husky, add "commitmsg": "validate-commit-msg" to your npm scripts in package.json.
执行
npm install husky --save-dev
复制代码
并且在 package.json
中的 scripts
字段中加入
"commitmsg": "validate-commit-msg"
复制代码
然后每次 git commit
之后,就会自动检查 commit message
是否合格。如果不合格,就会报错
husky > commit-msg (node v9.2.1)
INVALID COMMIT MSG: does not match "<type>(<scope>): <subject>" !
change
husky > commit-msg hook failed (add --no-verify to bypass)
生成 Change log
如果你的所有 commit 都符合 Angular 格式,那么发布新版本时, Change log 就可以用脚本自动生成。
生成的文档包括以下三个部分。
- New features
- Bug fixes
- Breaking changes.
每个部分都会罗列相关的 commit ,并且有指向这些 commit 的链接。当然,生成的文档允许手动修改,所以发布前,你还可以添加其他内容。
conventional-changelog
自动根据 commit
生成 change log
conventional-changelog
安装
npm install -g conventional-changelog-cli
- 本文链接: https://wp.cmyr.ltd/archives/automatically-generate-logs
- 版权声明: 本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
欢迎关注我的其它发布渠道
发表回复
要发表评论,您必须先登录。