2
2
Commitizen
3
3
=============
4
4
5
- Python 3 command line utility to standardize commit messages
5
+ Python 3 command line utility to standardize commit messages and bump version
6
6
7
7
8
8
.. image :: https://img.shields.io/travis/Woile/commitizen.svg?style=flat-square
@@ -35,30 +35,46 @@ Commitizen
35
35
About
36
36
==========
37
37
38
- This is an interactive tool to commit based on some rules (like conventional commits).
38
+ Interactive tool to commit based on established rules (like conventional commits).
39
39
40
- It comes with some defaults commit styles, like conventional commits and jira and it's easily extendable.
40
+ It comes with some defaults commit styles,
41
+ like conventional commits and jira and it's easily extendable.
41
42
42
43
It's useful for teams, because it is possible to standardize the commiting style.
43
44
45
+ Also includes an automatic version bump system based on semver.
46
+
44
47
45
48
Installation
46
49
=============
47
50
48
51
::
49
52
50
- pip install commitizen
53
+ pip install -U commitizen
54
+
55
+ ::
56
+
57
+ poetry add commitizen --dev
51
58
52
59
53
- For beta
60
+ ** Global installation **
54
61
55
62
::
56
63
57
64
sudo pip3 install -U commitizen
58
65
66
+ Features
67
+ ========
59
68
60
- Information
61
- ===========
69
+ - Prompt your commit rules to the user
70
+ - Display information about your commit rules (schema, example, info)
71
+ - Auto **bump ** version based on semver using your rules (currently there is only support for conventionalcommits)
72
+ - Future: New documentation
73
+ - Future: Autochangelog
74
+
75
+
76
+ Commit rules
77
+ ============
62
78
63
79
This client tool prompts the user with information about the commit.
64
80
@@ -117,8 +133,9 @@ Usage
117
133
118
134
::
119
135
136
+ $ cz --help
120
137
usage: cz [-h] [--debug] [-n NAME] [--version]
121
- {ls,commit,c,example,info,schema} ...
138
+ {ls,commit,c,example,info,schema,bump } ...
122
139
123
140
Commitizen is a cli tool to generate conventional commits.
124
141
For more information about the topic go to https://conventionalcommits.org/
@@ -130,26 +147,49 @@ Usage
130
147
--version get the version of the installed commitizen
131
148
132
149
commands:
133
- {ls,commit,c,example,info,schema}
150
+ {ls,commit,c,example,info,schema,bump }
134
151
ls show available commitizens
135
152
commit (c) create new commit
136
153
example show commit example
137
154
info show information about the cz
138
155
schema show commit schema
156
+ bump bump semantic version based on the git log
139
157
140
158
141
159
Configuration
142
160
==============
143
161
144
- You can create in your project folder a file called :code: `.cz `, :code: `.cz.cfg ` or in your :code: `setup.cfg `
145
- or if you want to configure the global default in your user's home folder a :code: `.cz ` file
146
- with the following information:
162
+ **New! **: Support for ``pyproject.toml ``
163
+
164
+ In your ``pyproject.toml `` you can add an entry like this:
165
+
166
+ ::
167
+
168
+ [tool.commitizen]
169
+ name = cz_conventional_commits
170
+ version = "0.1.0"
171
+ files = [
172
+ "src/__version__.py",
173
+ "pyproject.toml"
174
+ ]
175
+
176
+
177
+ Also, you can create in your project folder a file called
178
+ :code: `.cz `, :code: `.cz.cfg ` or in your :code: `setup.cfg `
179
+ or if you want to configure the global default in your user's home
180
+ folder a :code: `.cz ` file with the following information:
147
181
148
182
::
149
183
150
184
[commitizen]
151
185
name = cz_conventional_commits
186
+ version = 0.1.0
187
+ files = [
188
+ "src/__version__.py",
189
+ "pyproject.toml"
190
+ ]
152
191
192
+ The extra tab at the end (``] ``) is required.
153
193
154
194
Creating a commiter
155
195
========================
0 commit comments