husky v7+ 及 commitlint v13+ 配置方法都有很大改變, 原有的配置方法已經不再使用
安裝git-hook工具
yarn add husky -D
在當前目錄下生成.husky文件夾,並刪除里面的.gitignore忽略文件,否則無法將.husky下面的文件提交到git倉庫
yarn husky install
在.husky文件夾下創建commit-msg文件,注意不要修改commit-msg這個文件的名稱,否則husky功能會失效
npx husky add .husky/commit-msg
在.husky/commit-msg文件中寫入
#!/bin/sh . "$(dirname "$0")/_/husky.sh" # 提交記錄檢查 yarn commitlint --edit $1 # 格式化檢查 yarn format:check # eslint檢查 yarn lint:check
將.husky/commit-msg添加到代碼倉庫
git add .husky/commit-msg
安裝git 提交信息規范配置文件
yarn add -D @commitlint/{cli,config-conventional}
安裝changelog自動化生成工具
yarn add -D conventional-changelog-cli
package.json的script中添加
{ "changelog": "conventional-changelog -p angular -i CHANGELOG.md -s", "changelog:init": "conventional-changelog -p angular -i CHANGELOG.md -s -r 0", "changelog:help": "conventional-changelog --help", },
- 參數
-p
指定提交信息的規范,有以下選擇:angular, atom, codemirror, ember, eslint, express, jquery, jscs or jshint
- 參數
-s
表示將新生成的CHANGELOG
輸出到-i
指定的文件中 - 參數
-i
指定輸出CHANGELOG
內容的文件 - 參數
-r
默認為1
,設為0
將重新生成所有版本的變更信息