| description |
|---|
コミットを論理単位に再構成(git bisect対応) |
作業完了後に積み上がったコミットを、git bisectで調査しやすい論理的な単位に再構成する。
- main..HEAD のコミット
- 未コミット変更(ステージ済み・未ステージ)
git tag backup/tidy-$(date +%Y%m%d-%H%M%S)以下の観点で変更を分析し、論理単位にグループ化する:
- 依存関係: 依存される変更が先になるよう順序付け
- レイヤー分離: backend / frontend / db / scripts など
- 機能単位: 独立した機能や修正ごとにまとめる
- ビルド可能性: 各コミットが単独でビルド・テスト可能
# 未コミット変更をステージングに追加
git add -A
# 全変更をアンステージに戻す
git reset --soft main
git reset HEAD
# 論理単位ごとにコミット作成
git add <files...>
git commit -m "<conventional commit message>"Conventional Commits形式で作成:
<type>(<scope>): <日本語の説明>
<詳細説明(必要に応じて)>
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
type: feat, fix, docs, chore, refactor, test, style scope: frontend, backend, server, db, scripts, config
# Before: 1つの大きなコミット
abc1234 feat: ユーザー認証機能を追加
# After: 論理単位に分割
def5678 feat(backend): 認証スキーマとリポジトリを追加
ghi9012 feat(backend): 認証サービスを実装
jkl3456 feat(frontend): ログインフォームコンポーネントを追加
mno7890 feat(frontend): 認証状態管理を実装
pqr1234 test(backend): 認証サービスのテストを追加
失敗時は以下のコマンドで復元:
git reset --hard backup/tidy-<timestamp>-
新しいコミット履歴を表示
-
バックアップタグの削除を案内:
git tag -d backup/tidy-<timestamp>