Initial commit

This commit is contained in:
Zhongwei Li
2025-11-29 18:23:35 +08:00
commit 0fe2638c61
150 changed files with 37511 additions and 0 deletions

72
commands/commit-staged.md Normal file
View File

@@ -0,0 +1,72 @@
# /commit-staged
## 概要
stageされたファイルのみをコミットするためのコマンドです。適切なコミットメッセージを自動生成し、安全にコミットを実行します。
## 動作
1. `git status`でstageされたファイルを確認
2. stageされたファイルがない場合は警告を表示して終了
3. `git diff --cached`でstageされた変更内容を確認
4. 最近のコミットメッセージを参照してスタイルを把握
5. 変更内容に基づいて適切なコミットメッセージを生成
6. コミットを実行
7. コミット結果を確認
## 実装手順
### ステップ1: 事前チェック
```bash
# stageされたファイルを確認
git status --porcelain | grep "^[MADRCU]"
```
- stageされたファイルがない場合は終了
- unstageされた変更があっても無視stageされたもののみを対象
### ステップ2: 変更内容の分析
```bash
# stageされた変更の詳細を取得
git diff --cached
# 最近のコミットメッセージのスタイルを確認
git log --oneline -10
```
### ステップ3: コミットメッセージの生成
変更内容を分析して以下の形式でメッセージを生成:
- **feat**: 新機能の追加
- **fix**: バグ修正
- **refactor**: リファクタリング
- **docs**: ドキュメントの更新
- **style**: コードスタイルの修正
- **test**: テストの追加・修正
- **chore**: その他の変更
### ステップ4: コミット実行
```bash
# HEREDOCを使用してコミットメッセージを適用
git commit -m "$(cat <<'EOF'
[生成されたコミットメッセージ]
EOF
)"
```
### ステップ5: 結果確認
```bash
# コミット結果を確認
git status
git log --oneline -1
```
## 注意事項
- stageされていないファイルは含まれません
- 機密情報が含まれていないかチェックします
- プリコミットフックが失敗した場合は再試行を提案します
- pushは自動実行しませんユーザーの明示的な指示を待つ
- 空のコミットは作成しません
## 使用例
```
/commit-staged
```
このコマンドにより、stageされたファイルのみが適切なコミットメッセージと共にコミットされます。