1/**
2 * 导出一个默认对象,该对象包含了 commitlint 的配置
3 * 该配置继承自 @commitlint/config-conventional,并自定义了一些规则
4 */
5export default {
6 // 继承自 @commitlint/config-conventional
7 extends: ['@commitlint/config-conventional'],
8 // 自定义规则
9 rules: {
10 // 允许的提交类型
11 'type-enum': [
12 2, // 规则的错误级别,2 表示错误
13 'always', // 规则的应用时机
14 [
15 // 允许的提交类型列表
16 'feat', // 提交新特性
17 'fix', // 修复 bug
18 'docs', // 文档更新
19 'style', // 代码格式 (不影响代码运行的变动),注意不是css修改
20 'refactor', // 代码重构
21 'perf', // 优化相关,比如性能优化
22 'test', // 测试用例更新
23 'chore', // 其它修改,比如构建过程或辅助工具的变动
24 'revert', // 回滚到上一个版本
25 'build', // 编译相关的修改,例如发布版本、对项目构建或依赖的改动
26 ],
27 ],
28 // 提交类型的大小写
29 'type-case': [0], // 0 表示关闭该规则
30 // 提交类型是否允许为空
31 'type-empty': [0], // 0 表示关闭该规则
32 // 提交范围是否允许为空
33 'scope-empty': [0], // 0 表示关闭该规则
34 // 提交范围的大小写
35 'scope-case': [0], // 0 表示关闭该规则
36 // 提交主题是否允许以句号结尾
37 'subject-full-stop': [0, 'never'], // 0 表示关闭该规则,'never' 表示不允许以句号结尾
38 // 提交主题的大小写
39 'subject-case': [0, 'never'], // 0 表示关闭该规则,'never' 表示不允许改变大小写
40 // 提交头的最大长度
41 'header-max-length': [0, 'always', 72], // 0 表示关闭该规则,'always' 表示总是检查,72 表示最大长度
42 },
43}