项目更新日志自动生成(简易版本)

一、全局环境准备git czconventional-changelog

1
2
3
4
# 安装成功之后,会有两个全局的和
npm install -g commitizen
echo '{ "path": "cz-conventional-changelog" }' > ~/.czrc
npm install -g conventional-changelog-cli

二、规范git提交

(1) 使用git cz代替git commit,按提交代码
(2) 手动提交类似:Type(文件或者模块): 提交信息的commit记录
(3) type类型包括:

  • feat(新功能)
  • fix(修补bug)
  • perf(优化Performance)
  • style(格式化)
  • docs(文档)
  • refactor(重构)
  • build(构建改动)
  • ci
  • test

三、生自动生成更新日志

(1) 修改package.json

1
2
3
4
5
{
"scripts": {
"version": "conventional-changelog -p angular -i CHANGELOG.md -s -r 0 && git add CHANGELOG.md"
}
}

加入之后,在执行npm verson [patch]或者npm run version的时候自动生成日志

(2) 支持一个git仓库多个项目(修改每个项目中的package,指定生成当前目录下的日志)

1
2
3
4
5
{
"scripts": {
"changelog": "conventional-changelog -p angular -i CHANGELOG.md -s -r 0 --commit-path '.'"
}
}

四、检查提交规范

(1) 安装 yorkie

1
yarn add yorkie -D

(2) 使用下边正则,根据需要修改,具体查看 vue/scripts/verify-commit-msg.js

1
const commitRE = /^(revert: )?(feat|fix|polish|docs|style|refactor|perf|test|workflow|ci|chore|types|build)(\(.+\))?: .{1,50}/

五、更多文档