piapia123
ja

ランダムな git コミットメッセージ生成

生成

処理はすべてブラウザ内で完結します。データは送信されません

出力

デモ、画面収録、テストデータ、空のリポジトリを埋めるとき、コミットメッセージを手で 10 個書くのは面倒で重複しがちです。本ツールは Conventional Commits 形式(`type(scope): 説明`)でまとめて生成します。型は feat・fix・docs・style・refactor・perf・test・build・ci・chore・revert。スコープは任意、本文を 1 行入れられ、破壊的変更の印も付けられます。印を付けると、ヘッダに `!` を足し、脚注に全大文字の `BREAKING CHANGE: …` を 1 行入れます(小文字やハイフンだと多くの自動化ツールが認識しません)。シードを入れると同じ結果を再現できます。

機能

  • Conventional Commits 形式:type(scope): 説明
  • 11 種類のコミット型から選択
  • スコープは任意。空白はハイフンに変換
  • 1 回に 1〜20 件、1 件ずつまとめて表示
  • 任意で 1 行の本文
  • ⚠️ BREAKING CHANGE は全大文字の脚注、ヘッダには !
  • シードで同じ結果を再現
  • 乱数は暗号学的乱数源を使用(Math.random は使わない)

使い方

  1. コミット型(feat・fix など)を選びます
  2. 必要ならスコープ(auth・ui など)を入力します
  3. 件数を選び、本文や破壊的変更を必要に応じてオンにします
  4. 必要な行をコピーするか、別の一批を生成します

よくある質問

BREAKING CHANGE はなぜ大文字でなければならないのですか?
Conventional Commits の取り決めでは、破壊的変更は脚注に `BREAKING CHANGE: …`(全大文字、区切りは空白)と書きます。意味的バージョニングや changelog 生成器はこの文字列で判定するため、小文字の `breaking change` やハイフンの `breaking-change` では認識されません。エラーにはならず、その版が黙って major 扱いされないだけです。ヘッダの `!` は脚注を読まない人にも分かるように付けます。
シードはどう使いますか?
任意の文字列を入れると同じ結果を再現できます。デモの収録、文書、不具合報告で「さっきの一批をもう一度」に便利です。空にすると暗号学的乱数源を使い、毎回変わります。これは再現可能な擬似乱数であり、秘密用途ではありませんが、コミットメッセージはそもそも秘密ではありません。
日本語以外も生成できますか?
できます。説明は界面の言語に従います。日本語なら日本語、英語なら英語、中国語なら中国語の説明になります。型や括弧などの形式の印は常に英語です。Conventional Commits のキーワードであり、訳すと認識されなくなるためです。

関連ツール