Claude-skill-registry Enforcing Git Commit Workflow

Enforce semantic commit practices with proper file staging and prefix usage. Use when committing code, managing git history, or when user mentions git/commit/コミット.

install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/enforcing-git-commit-workflow" ~/.claude/skills/majiayu000-claude-skill-registry-enforcing-git-commit-workflow && rm -rf "$T"
manifest: skills/data/enforcing-git-commit-workflow/SKILL.md
source content

Enforcing Git Commit Workflow

意味のあるコミット履歴を保つための厳格なGitワークフロー管理スキル。

いつ使うか

  • コードをコミットする時
  • ユーザーがgit関連の操作を要求した時
  • コミットメッセージの作成が必要な時

基本原則

1. 機能別コミットを原則とする

各コミットは1つの明確な目的を持つこと。

2.
git add -A
禁止

例外:

pnpx changeset version
が生成した大量のパッケージ更新を commit する場合のみ。

3. 必ず個別ステージング

# ✅ 正しい
git add path/to/changed-file.ts
git add another/file.test.ts
git commit -m "test: add edge-case tests for suggest command"

# ❌ 間違い
git add -A
git commit -m "update files"

Prefix 一覧

詳細は prefix-reference.md を参照。

主要なPrefix

Prefix用途 (日本語)説明
fixバグ修正コードの不具合を修正するコミット
hotfixクリティカルなバグ修正サービス停止レベルの緊急バグ対応
add新規機能追加新しいファイルや小規模機能を追加するコミット
feat新機能ユーザー向けの大きな機能追加または変更
update機能修正既存機能に対する修正・改善(バグ修正ではない)
change仕様変更仕様そのものを変更するコミット
clean整理使われていないコードの削除や軽微な整理
disable無効化機能を一時的に無効化(コメントアウト等)
refactorリファクタリング挙動を変えずに内部構造のみ改善
remove削除ファイル・ライブラリ・機能を削除するコミット
upgradeバージョンアップ依存ライブラリや FW のメジャーアップデート
revert変更取り消し以前のコミットを打ち消すコミット
docsドキュメントREADME やコメントのみの変更
styleスタイル修正コードフォーマット、空白、セミコロンなど動作に影響しない変更
perfパフォーマンスパフォーマンス改善のための実装変更
testテストテストコードの追加・更新・リファクタ
chore雑多メンテビルド、CI、依存更新など本番コードに影響しない作業

実行フロー

ステップ1: ファイル分類

変更ファイルを目的別にグループ化:

  • テストコード
  • 実装コード
  • ドキュメント
  • 設定ファイル

ステップ2: 個別ステージング

# テストを先にコミット
git add src/__tests__/feature.test.ts
git commit -m "test: add tests for new feature"

# 次に実装
git add src/feature.ts
git commit -m "feat: implement new feature"

ステップ3: 不明点の確認

判断できない場合は必ずユーザーに確認

  • 「この変更はどのカテゴリに属しますか?」
  • 「これらのファイルは一緒にコミットして良いですか?」

警告・中断処理

以下を検出した場合、警告を表示し処理を中断

  • git add -A
    の使用(例外: changeset version)
  • 不明確なコミットメッセージ
  • 複数の目的が混在するコミット

ユーザーが強制実行を指定しない限り続行しない。

自動コミット禁止

Claude Code 自身が判断して Push まで行う場合でも、上記手順に従ってログを分割すること。

参考

詳細なPrefix一覧とガイドラインは prefix-reference.md を参照。