自动生成日志
参考链接:https://juejin.im/post/5bd2debfe51d457abc710b57
Commitizen – 自动生成合格的 commit message
根据上述的描述,你是不是在感慨写个 commit message
好麻烦,这里介绍下 Commitizen
– 能够根据提示自动生成符合规范的 commit message
安装
1 | $ npm install -g commitizen |
在项目中使用
然后,在项目目录里,运行下面的命令,使其支持 Angular
的 Commit message
格式。
1 | $ 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
安装
1 | 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.
执行
1 | npm install husky --save-dev |
并且在 package.json
中的 scripts
字段中加入
1 | "commitmsg": "validate-commit-msg" |
然后每次 git commit
之后,就会自动检查 commit message
是否合格。如果不合格,就会报错
1 | husky > commit-msg (node v9.2.1) |
生成 Change log
如果你的所有 commit 都符合 Angular 格式,那么发布新版本时, Change log 就可以用脚本自动生成。
生成的文档包括以下三个部分。
- New features
- Bug fixes
- Breaking changes.
每个部分都会罗列相关的 commit ,并且有指向这些 commit 的链接。当然,生成的文档允许手动修改,所以发布前,你还可以添加其他内容。
conventional-changelog
自动根据 commit
生成 change log
conventional-changelog
安装
1 | npm install -g conventional-changelog-cli |
本文作者:草梅友仁
本文地址: https://blog.cmyr.ltd/archives/320b027.html
版权声明:本文采用 CC BY-NC-SA 4.0 协议 进行分发,转载请注明出处!