# @h3/cz-customizable-config-standard

维护人:东润(chenwr@authine.com)、木木(linqh@authine.com)

定制commitlint

cz-customizable : 允许我们定制符合commitizen的commitlint

规则继承

@h3yun/cz-customizable-config 继承了 @h3/cz-customizable-config-standard

# 配置

# @h3/cz-customizable-config-standard setting

{
  // type 的枚举
  types: [
    { value: 'feat', name: 'feat: 一个新功能' },
    { value: 'improvement', name: 'improvement: 对当前功能的改进' },
    { value: 'fix', name: 'fix: 一个bug修复' },
    { value: 'docs', name: 'docs: 仅是文档修改' },
    {
      value: 'style',
      name: 'style: 不会影响代码含义的更改,例如空格,格式化,缺少分号等等',
    },
    {
      value: 'refactor',
      name: 'refactor: 代码重构',
    },
    {
      value: 'perf',
      name: 'perf: 更改代码以提高性能',
    },
    { value: 'test', name: 'test: 添加缺失的测试' },
    {
      value: 'chore',
      name: 'chore: 更改构建过程或辅助工具和诸如文档生成之类的库',
    },
    {
      value: 'build',
      name: 'build: 影响构建系统或外部依赖项的更改,例如gulp,broccoli,npm',
    },
    {
      value: 'ci',
      name: 'ci: 对CI配置文件和脚本的更改,例如Travis, Circle, BrowserStack, SauceLabs',
    },
    { value: 'revert', name: 'revert: 撤回之前某个提交' },
    { value: 'WIP', name: 'WIP: 工作正在进行中,还未完成但不影响项目运行' },
  ],
  // scopes 的枚举
  scopes: [],
  // 是否关联编号
  allowTicketNumber: true,
  // 是否必须关联编号
  isTicketNumberRequired: false,
  // 关联编号前缀
  ticketNumberPrefix: '',
  // 关联编号校验
  ticketNumberRegExp: '#\\d{1,}',

  // 需要匹配字段类型的值。例如:'fix'
  /*
  scopeOverrides: {
    fix: [

      {name: 'merge'},
      {name: 'style'},
      {name: 'e2eTest'},
      {name: 'unitTest'}
    ]
  },
  */
  // 信息
  messages: {
    type: '选择您要提交更改的的类型:',
    scope: '\n选择更改的的范围(可选):',
    customScope: '请输入更改的的范围(可选)。例如:components:',
    // ticketNumber: '输入关联的需求或缺陷的编号:',
    ticketNumberPattern: '输入关联的需求或缺陷的编号,遵循这种正则 /#\\d{1,}/ 规格:#123(可选):',
    subject: '请输入更改的简短描述:\n',
    body: '请输入更改的详细描述(可选)。使用"|"换行:\n',
    breaking: '列出任何破坏性更改(可选):\n',
    footer: '列出更改关闭的所有ISSUES(可选)。规格:Closes #233,Closes #123, #233:\n',
    confirmCommit: '您确定要继续上面的提交吗?',
  },
  //是否允许只有scope
  allowCustomScopes: true,
  //只允许以下类型提问破坏性更新
  allowBreakingChanges: ['feat', 'fix', 'improvement', 'refactor', 'perf'],
  //跳过问题
  skipQuestions: [], // 'body'

  // 文本描述长度
  subjectLimit: 100,
  // breaklineChar: '|', // body 和 footer 换行符号.
  // footerPrefix : 'ISSUES CLOSED:' footer前缀
  // askForBreakingChangeFirst: true, // 是否先询问是否有破坏性更新
};

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85

# @h3yun/cz-customizable-config setting

const standardConfig = require('@h3/cz-customizable-config-standard');
const { messages, ...config } = standardConfig;
module.exports = {
  ...config,
  messages: {
    ...messages,
    ticketNumberPattern: '输入关联的需求或缺陷的编号,遵循这种正则 /#\\d{1,}/ 规格:#123:',
  },
  isTicketNumberRequired: true,
  allowBreakingChanges: [],
  skipQuestions: ['body', 'breaking', 'footer'],
};

1
2
3
4
5
6
7
8
9
10
11
12
13