之前一直在公司一直困扰怎么规范各人的代码提交,一直没有很好的方法,全靠督促和自觉,今天在新公司看到了他的方法觉得很好,几个轮子的事。。。不得不说,会找轮子是真的省很多事。下面总结一下这个的详细步骤
1、先看一下husky这个插件
husky这个插件是可以向项目中添加git hooks,有了这个插件就可以在git操作的各个阶段执行需要的脚本或者命令,首先install -D,接下来在package.json里配置
"husky": {
"hooks": {
"pre-commit": "lint-staged", // 在commit之前执行lint-staged命令
"commit-msg": "commitlint -E HUSKY_GIT_PARAMS" // 校验commit时添加的备注信息是否符合规则
}
},
这里就配置了我之前说的两个需要规范的hooks
2、接下来看一下 lint-staged 这个插件
npm run lint 都知道是对整个项目执行一个格式化,很慢很慢,而这里这个lint-staged是对git暂存区的文件进行一个lint的格式化,依然可以达到一个对提交代码的格式化的作用,package.json里配置如下
"lint-staged": {
"*.{js,vue}": "eslint --fix --quiet", // 对暂存区的js、vue文件执行eslint规范的格式化
"*.{less,vue}": "stylelint --fix --allow-empty-input" // 对less、vue执行stylelint规范的格式化
},
到这里已经对提交的代码进行一个规范管理,但是规范咱就规范到底,对commit提交信息也规范管理
3、commitlint对提交的commit信息进行规范管理
commitlint插件可以在项目中编写一个.commitlintrc.js文件来制定规则,具体的配置自行百度,这里就不详细说了