| name | commit |
| description | Git変更をコミットしてリモートにプッシュ。「コミット」「コミットして」「pushして」「変更を保存して」と言われた時、またはバグ修正・新機能・リファクタリング完了後に使用 |
| allowed-tools | Read, Bash |
Commit Workflow
このスキルは現在の変更をGitブランチにコミットしてリモートにプッシュします。
実行手順
1. ブランチ戦略の確認
まずREADME.mdを読み込んで、プロジェクトのブランチ戦略を理解してください:
Read README.md
ブランチ構成の例:
main: 本番環境(必須)staging: ステージング環境(プロジェクトによっては存在しない場合がある)feature/*: 新機能開発bugfix/*: バグ修正hotfix/*: 緊急修正refactor/*: リファクタリングchore/*: 設定変更・ビルド関連test/*: テストコードdocs/*: ドキュメント作成・更新
ベースブランチの確認:
git branch -a
で利用可能なブランチを確認します。
2. 変更内容の確認
git status
git diff
で変更ファイルと差分を確認します。
3. ブランチ名の決定
変更内容に基づいて適切なブランチ名を決定:
- プレフィックス:
feature/、bugfix/、refactor/、chore/、test/、hotfix/、docs/ - kebab-case形式
- 例:
bugfix/fix-login-error、feature/add-user-search、docs/update-api-spec
4. ブランチ作成(新しいブランチの場合)
すでに適切なブランチにいる場合はスキップしてください。
git checkout -b <branch-name>
5. コミット情報の準備
変更内容に基づいて、以下を準備します:
# ステージング
git add <files>
# ステージング内容の確認
git diff --cached
コミットメッセージ案を作成:
- タイトル: 1行で簡潔に変更内容を記述
- 詳細: 変更内容の具体的な説明(箇条書き)
- 英語と日本語の間に余計な半角スペースを追加しない
6. ユーザー確認
以下の git commit コマンド形式でユーザーに提示し、コミットの許可を得てください:
git commit -m "$(cat <<'EOF'
タイトル(1行、簡潔に変更内容を記述)
- 変更内容の詳細1
- 変更内容の詳細2
- 変更内容の詳細3
EOF
)"
変更ファイル:
- ファイル1
- ファイル2
- ...
重要: ユーザーの許可なしにコミットを実行しないでください。
7. コミット実行
ユーザーの許可を得てから、コミットを実行します:
git commit -m "$(cat <<'EOF'
タイトル(1行、簡潔に変更内容を記述)
- 変更内容の詳細1
- 変更内容の詳細2
- 変更内容の詳細3
EOF
)"
コミットメッセージは日本語で記述します。
8. リモートへプッシュ
# 新しいブランチの場合
git push -u origin <branch-name>
# 既存ブランチの場合
git push
チェックリスト
実行前に確認すべき項目:
- README.mdを読み込んでブランチ戦略を理解した
-
git branch -aで利用可能なブランチを確認した -
git statusとgit diffで変更内容を確認した - 適切なブランチプレフィックスを選択した
- セキュリティ情報(
.env,credentials等)を含まない - ステージング済みファイルとコミットメッセージ案をユーザーに提示した
- ユーザーの許可を得てからコミットを実行した
- コミットメッセージが明確で日本語で記述されている
使用例
例1: 既存ブランチでの追加コミット
ステップ1: 変更を確認
git branch
git status
git diff
ステップ2: ステージングと確認
git add docs/contact_relation_spec.md
git diff --cached
git diff --cached --name-only
ステップ3: ユーザーに提示
git commit -m "$(cat <<'EOF'
[タイトル: 1行で簡潔に変更内容を記述]
- [変更内容の詳細1]
- [変更内容の詳細2]
EOF
)"
変更ファイル:
- [ファイルパス]
ステップ4: ユーザーの許可を待つ
ステップ5: 許可後にコミット・プッシュ
git commit -m "$(cat <<'EOF'
ユーザー検索機能を追加
- 名前・メールアドレスでの検索に対応
- ページネーション実装
EOF
)"
git push
例2: 新規ブランチでのコミット
ステップ1: ブランチ作成と変更確認
git checkout -b feature/add-user-search
git status
git diff
ステップ2: ステージングと確認
git add [ファイルパス]
git diff --cached --name-only
ステップ3: ユーザーに提示
git commit -m "$(cat <<'EOF'
[タイトル: 1行で簡潔に変更内容を記述]
- [変更内容の詳細1]
- [変更内容の詳細2]
EOF
)"
変更ファイル:
- [ファイルパス]
ステップ4: ユーザーの許可を待つ
ステップ5: 許可後にコミット・プッシュ
git commit -m "$(cat <<'EOF'
ユーザー検索機能を追加
- 名前・メールアドレスでの検索に対応
- ページネーション実装
EOF
)"
git push -u origin feature/add-user-search
よくある間違い
❌ 間違い: セキュリティ情報(.env、credentials等)を含めてコミット
✅ 正解: .gitignoreに記載されたファイルは絶対にコミットしない
❌ 間違い: ユーザーの許可なしにコミットを実行 ✅ 正解: 必ずコミットメッセージと変更ファイルをユーザーに提示してから実行
❌ 間違い: コミットメッセージが英語 ✅ 正解: 日本語で明確に記述
❌ 間違い: git add .で全ファイルを無差別にステージング
✅ 正解: 必要なファイルのみを明示的に指定
次のステップ
コミット・プッシュ後にプルリクエストを作成する場合は、prスキルを使用してください。