commit について
commitは、ステージ済みの変更と作業意図に沿ったGitコミットを作成するリポジトリ向けスキルです。変更確認、規約に沿ったメッセージ作成、検証結果の記録、Codexの共同作成者トレーラーを案内します。
主な機能
- 01作業ツリーとステージ済み差分の確認
- 02対象変更のステージと新規ファイルの点検
- 03規約に沿った簡潔な件名の作成
- 04概要、理由、検証内容の記載
- 05Codexの共同作成者トレーラーの追加
活用シーン
- 01完了したコード変更のコミット
- 02ステージ済みファイルの無関係な生成物の確認
- 03コミットメッセージへの理由とテスト状況の記録
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ odysseus0/ symphony --skill commitインストール後、Claude Code で/commitを入力して読み込まれたか確認します。
詳細
コミット
目標
- 実際のコード変更とセッションのコンテキストを反映したコミットを作成します。
- 一般的な Git の規約(タイプの接頭辞、短い件名、折り返した本文)に従います。
- 本文に概要と理由の両方を含めます。
入力
- 意図と理由を把握するための Codex セッション履歴。
- 実際の変更内容を確認するための
git status、git diff、git diff --staged。 - リポジトリ固有のコミット規約が文書化されている場合は、その規約。
手順
- セッション履歴を読み、変更の範囲、意図、理由を把握します。
- 作業ツリーとステージ済みの変更を確認します(
git status、git diff、git diff --staged)。 - 範囲を確認したうえで、新規ファイルを含む変更をステージします(
git add -A)。 - 新しく追加したファイルに問題がないか確認します。ビルド生成物、ログ、 一時ファイルなど、無関係または無視される可能性があるものがあれば、 コミット前にユーザーへ知らせます。
- ステージングが不完全、または無関係なファイルが含まれている場合は、 インデックスを修正するか、確認を求めます。
- 変更に合った一般的なタイプと任意のスコープを選びます
(例:
feat(scope): ...、fix(scope): ...、refactor(scope): ...)。 - 命令形で、72 文字以内、末尾にピリオドを付けない件名を書きます。
- 本文に以下を含めます。
- 主な変更の概要(何を変更したか)。
- 変更の理由とトレードオフ(なぜ変更したか)。
- 実行したテストや検証(実施していない場合はその旨を明記)。
- ユーザーから別の ID を指定されていない限り、Codex 用の
Co-authored-byトレーラーにCodex <[email protected]>を指定して追加します。 - 本文の各行は 72 文字で折り返します。
- here-doc または一時ファイルを使ってコミットメッセージを作成し、
git commit -F <file>を使用して改行をそのまま保持します (\nを含む-mの使用は避けます)。 - メッセージがステージ済みの変更と一致する場合にのみコミットします。 ステージ済みの差分に無関係なファイルが含まれている場合や、 メッセージにステージされていない作業が記載されている場合は、 インデックスを修正するか、メッセージを見直します。
出力
- セッションを反映したメッセージで作成された、
git commitによる単一のコミット。
テンプレート
タイプとスコープは例です。リポジトリと変更内容に合わせて調整してください。
<type>(<scope>): <short summary>
Summary:
- <what changed>
- <what changed>
Rationale:
- <why>
- <why>
Tests:
- <command or "not run (reason)">
Co-authored-by: Codex <[email protected]>
コメント
Markdown 対応