TCF腾讯云前端,代码提交检查
前言
云前端已经有了工程代码规范,但本地开发没有强制约束,导致某些同学刀尖舔血,逍遥法外
-_!!。
本项目用于提交代码的本地检查(不含CI服务端检查),强制约束提交行为:
提交代码时检查eslint规范和commit消息格式,不符合规范的禁止提交
并给出友好的提示。
快速使用
- 安装
tnpm i --save-dev @tencent/tcf-commit
- package.json配置
"husky": {
"hooks": {
"pre-commit": "tcf-commit",
"commit-msg": "tcf-commit -t msg"
}
}
命令参数
例如:tcf-commit -e js|json
- -e --ext 待检查文件后缀名 默认 js|ts
- -t --type 检查类型 默认code。代码检查code,提交消息检查msg
- -c --config 配置文件,commitlint的config
提交消息检查
规范的提交message,有助于定位问题和自动生成变更日志
标准格式
type(scope?): subject
body?
footer?
注意:type(scope?):空格
subject
type说明
- build:主要目的是修改项目构建系统(例如 glup,webpack,rollup 的配置等)的提交
- ci:主要目的是修改项目继续集成流程(例如 Travis,Jenkins,GitLab CI,Circle等)的提交
- docs:文档更新
- feat:新增功能
- merge:分支合并 Merge branch ? of ?
- fix:bug 修复
- perf:性能, 体验优化
- refactor:重构代码(既没有新增功能,也没有修复 bug)
- style:不影响程序逻辑的代码修改(修改空白字符,格式缩进,补全缺失的分号等,没有改变代码逻辑)
- test:新增测试用例或是更新现有测试
- revert:回滚某个更早之前的提交
- chore:不属于以上类型的其他类型
eslint格式检查
- eslint规范参考,TCF腾讯云前端,统一代码规范
- 每次只检查当前要提交的代码,而不是全量。(注:这样便于旧项目改造且提供检查效率)
- 代码必须保证
无error问题
- 虽然warning不做强制要求,但前端同学也需要注意关注和优化。
- 后面服务端CI也会介入代码检查,在每次发布时,出具eslint报告。