前端项目代码提交规范化实践
commitizen规范提交信
1 |
|
1 |
|
执行后在package.json下会生成以下配置
1 |
|
另外还可以安装中文包
1 |
|
并修改配置,可自定义:
1 |
|
为了方便提交,添加package.json中scripts的配置:
1 |
|
standard-version自动化版本控制
1 |
|
添加scripts配置
1 |
|
编写自定义脚本,进行版本号升级控制:
1 |
|
修改package.json 的scripts 中的commit配置并添加update:version命令:
1 |
|
在运行commitizen提交后,将会执行脚本文件version.js进行版本更新,若不选择skip,则运行standard命令,会在根目录下生成CHANGELOG.md(版本更新日志文件)。
集成Husky和lint-staged
Husky可以在 git 提交代码的前后,执行一系列的 git hooks,以对代码、文件等进行预设的检查,一旦检查不通过,就可以阻止当前的代码提交,避免了不规范的代码和 git 提交出现在项目中。
lint-staged
是一个专门用于在通过git
提交代码之前,对暂存区的代码执行一系列的格式化。当lint-staged
配合 git hooks 使用时,可以在 git 提交前的 hook 中加入lint-staged
命令,这样就能在提交代码之前,对即将提交的代码进行格式化,成功之后就会提交代码。
1 |
|
执行命令后,你就会看到你的 package.json
里多了一个 lint-staged
配置项,且根目录下多了一个 .husky
目录,里面就包含了 pre-commit 文件,里面包含了一个最基础的命令:npx lint-staged
。
我们可以修改lint-staged的配置项已达到我们校验代码的目的,比如eslint、stylelint等等
1 |
|
可创建其他钩子git hooks,并在文件里面编写shell脚本
1 |
|
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!