Commit message 和 Change log 编写指南
作者:互联网
项目需要写版本信息时有对除了版本号之外更详细的 changelog 的展示, 于是就需要在平时的 git commit 中进行规范, 才能自动生成CHANGELOG.md.
yarn安装依赖
Husky
首先本地安装 husky yarn add husky -D, 其中 pre-commit就可以对代码进行 lint 检查, 避免 lint 的错误被上传.
{
"scripts": {
"lint": "vue-cli-service lint --fix"
},
"husky": {
"hooks": {
"pre-commit": "yarn lint && git add ."
}
}
}
Commitizen
全局安装 commitizen
yarn global add commitizen
会在使用 git cz开始提交时被触发, 可以按照模板书写适合生成 CHANGELOG 的 commit, 这样才可以通过下面的 commitlint 工具
安装完成后在项目根目录下使用
commitizen init cz-conventional-changelog --yarn --dev --exact
配置commitizen, 会在package.json 中添加commitizen路径
"config": {
"commitizen": {
"path": "cz-conventional-changelog"
}
}
Commitlint
这是检查 commit-msg 是否符合标准.
yarn add @commitlint/cli @commitlint/config-conventional -D
在项目根目录新建一个文件.commitlintrc.js
module.exports = {
extends: ['@commitlint/config-conventional']
}
我们之后的所有 commit msg 都会符合 commitlint 的标准。
standard-version
standard-version 可以使用脚本生成 CHNAGELOG, 并且更新版本号, 如果有需要还可以创建 tag.
yarn add standard-version -D
{
"script": {
"release": "standard-version"
}
}
在 git status clean 的时候使用
yarn release
就会生成一个 CHANGELOG.md, 并更新版本号.
npm安装依赖
package.json配置和上一致
// 安装全局依赖
npm install --global commitizen
// 安装项目依赖
npm install --save-dev standard-version husky @commitlint/config-conventional @commitlint/cli
// 配置 commitizen
commitizen init cz-conventional-changelog --save-dev --save-exact
// 生成 CHANGELOG
npm run release
package.json scripts配置
"scripts": {
"serve": "vue-cli-service serve --open --mode development",
"build": "vue-cli-service build",
"test:unit": "vue-cli-service test:unit",
"lint": "vue-cli-service lint --fix",
"changelog": "node scripts/changelog.js",
"dev": "vue-cli-service serve",
"new": "node scripts/new.js",
"release": "standard-version"
},
标签:commitizen,log,--,lint,yarn,Commit,message,commitlint,cli 来源: https://blog.csdn.net/chituZip/article/details/110921232