-
Notifications
You must be signed in to change notification settings - Fork 2
/
.commitlintrc.yml
183 lines (156 loc) · 4.04 KB
/
.commitlintrc.yml
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
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
##############
# Commitlint #
##############
# Lint commit messages:
# http://marionebl.github.io/commitlint
# [WARNING] Commitlint doesn't install globally:
# https://github.com/marionebl/commitlint/issues/179
# Probot Commitlint
# Check commits in pull requests.
# [WARNING] Probot Commitlint doesn't work with commitlint configuration files:
# https://github.com/ahmed-taj/commitlint-bot/pull/8
# https://probot.github.io/apps/commitlint/
# [NOTE] If contains “.commitlintrc.yml” file, config-conventional extends doesn't need;
# You don't need install @commitlint/config-conventional:
# http://marionebl.github.io/commitlint/#/guides-local-setup?id=install-commitlint
# commitlint rules:
# 0 — disable, 1 — warning, 2 — error:
# I'm not use warnings, that CI works correct.
# https://github.com/marionebl/commitlint/blob/master/docs/reference-rules.md#rules
# https://github.com/SuperPaintman/commitlint-config-pedantic/blob/master/configs/base.yml
# [WARNING] I set value for each rule, because no default level values in commitlint description:
# https://github.com/marionebl/commitlint/issues/316
rules:
body-leading-blank:
- 2
- always
body-max-length:
- 0
- always
body-min-length:
- 0
- always
footer-leading-blank:
- 2
- always
footer-max-length:
- 0
- always
footer-min-length:
- 0
- always
header-max-length:
- 2
- always
- 120
header-min-length:
- 2
- always
- 1
# https://marionebl.github.io/commitlint/#/reference-rules?id=references-empty
references-empty:
- 0
- never
scope-enum:
- 0
- always
scope-case:
- 2
- always
- lower-case
scope-empty:
- 2
- never
scope-max-length:
- 0
- always
scope-min-length:
- 0
- always
subject-case:
- 2
- never
-
# [INFO] Enable upper-case and sentence-case; proper names can be used in commits
# https://en.wikipedia.org/wiki/Letter_case#Case_styles
- pascal-case
- start-case
subject-empty:
- 2
- never
subject-full-stop:
- 2
- never
- "."
subject-max-length:
- 0
- always
subject-min-length:
- 0
- always
type-enum:
- 2
- always
-
# A new feature
- feat
# A bug fix
- fix
# Documentation only changes
- docs
# Changes that do not affect the meaning of the code (white-space, formatting, missing semi-colons, etc)
# Validation changes — this type.
- style
# A code change that neither fixes a bug nor adds a feature
- refactor
# A code change that improves performance
- perf
# Adding missing or correcting existing tests
- test
# Changes to our CI configuration files and scripts (example scopes: Travis, Circle, BrowserStack, SauceLabs)
- ci
# [INFO] Tool changes, configuration changes,
# and changes to things that do not actually go into production at all:
# https://stackoverflow.com/a/26944812/5951529
- chore
# Building tools changes (example scopes: grunt, gulp)
- build
# Reverts a previous commit
- revert
# [INFO] Personal types
# VCS changes (example scopes: bazaar, mercurial, git)
- vcs
# Debugging.
- debug
# [INFO] Update
- upd
# [INFO] Changes for linters/checkers/validators.
# Example scopes — “eslint”, “stylint”
- lint
# [INFO] Migrate from one tool to another
- migrate
# [INFO] Delete unneeded
- del
type-case:
- 2
- always
- kebab-case
type-empty:
- 2
- never
type-max-length:
- 0
- always
type-min-length:
- 0
- always
# [INFO] Sign-off commits:
# https://stackoverflow.com/a/14044024/5951529
# I'm not use it in my projects:
# 1. gpg-sign more really certify commit author,
# 2. unobfuscate e-mail push to GitHub,
# 3. User needs add “Signed-off-by: Your Name <[email protected]>” each time,
# it may take a lot of time.
signed-off-by:
- 0
- always