Commitizen
規定のフォーマットに沿ってコミットメッセージを生成しつつコミットするのを補助するツール
git commit とコマンドに互換性があるため、コミットを git cz に変えるだけで使える
インストール
code:sh
# Commitzen をインストール
npm install -g commitizen
# Conventional Commits 向けの設定を行う
npm install -g cz-conventional-changelog
echo '{ "path": "cz-conventional-changelog" }' > ~/.czrc
使い方
git commit の代わりに git cz を使うだけでOK
--allow-empty などのオプションも有効
hub から実行することももちろんできる
code:sh
#
❯ hub cz --allow-empty
cz-cli@4.2.6, cz-conventional-changelog@3.3.0
? Select the type of change that you're committing: fix: A bug fix
? What is the scope of this change (e.g. component or file name): (press enter to skip)
? Write a short, imperative tense description of the change (max 95 chars):
(22) this is sample message
? Provide a longer description of the change: (press enter to skip)
? Are there any breaking changes? No
? Does this change affect any open issues? No
VSCodeで使うには
拡張機能を入れるとある程度解決できる
SourceTreeで使うには
拡張する余地がないので CI で Linting するか precommit のタイミングで落とすなどが必要かも
関連