git-merge-expert について
git-merge-expert は、Git のマージ、競合解決、ロールバック、クリーンアップを扱うスキルです。変更前の確認と完了後の検証を重視し、リポジトリの状態を保ちながら慎重に操作したいマージ作業向けです。
主な機能
- 01マージの準備状況を評価
- 02バックアップ参照を作成
- 03競合を慎重に解決
- 04マージ結果を検証
- 05破壊的なクリーンアップを確認
活用シーン
- 01マージ前に PR の状態を確認
- 02競合を確認してブランチをマージ
- 03失敗したマージから復旧
- 04マージ済みブランチを安全に整理
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ ulpi-io/ skills --skill git-merge-expertインストール後、Claude Code で/git-merge-expertを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/conflict-and-rollback.mdmerge-expertise.mdmerge-strategies.md詳細
譲れないルール:
- マージ前に、ブランチの状態、CI、レビュー、競合のリスクを確認してください。
- 複雑なマージや破壊的な復旧の前に、バックアップポイントを作成してください。
- 成功を宣言する前に、マージ後の検証を行ってください。
- リスクの高いマージや、明示的に分離を求められたマージでは、独立したワークツリーでの実行を優先してください。
- 破壊的なロールバックやブランチのクリーンアップの前に、ユーザーから明示的な確認を得てください。
Git マージエキスパート
入力
$request:PR 番号、ソースブランチ、ターゲットブランチ、マージ方法、ロールバック先、または競合解決の目標
目標
次の方法で、安全な Git マージを実行します。
- マージの準備状況とマージ方法を評価する
- 必要に応じてリスクを隔離する
- 意図を損なわずに競合を解決する
- 結果を検証する
- 安全にクリーンアップまたはロールバックする
ステップ 0:要求されたマージ操作を特定する
ユーザーが次のどれを求めているかを判断します。
- PR のマージ
- あるブランチから別のブランチへのマージ
- 進行中のマージで発生した競合の解決
- 実行前のマージ準備状況の評価
- 問題のあるマージのロールバック
- マージ済みブランチのクリーンアップ
要求された範囲、マージ方法、またはクリーンアップの動作が曖昧な場合は、Git の状態を変更する前に AskUserQuestion を使用してください。
成功条件:ソース、ターゲット、マージ方法、クリーンアップの要件が明確であること。
ステップ 1:準備状況を評価し、実行方法を選択する
次の項目を確認します。
- 現在のブランチと作業ツリーの状態
- ソースブランチとターゲットブランチの構成
- 該当する場合は PR の準備状況
- 該当する場合は CI とレビューの状態
- 競合の可能性
次のどちらで実行するかを決定します。
- 単純なマージであれば、その場で続行する
- 分離した環境で実行するため、
git-merge-expert-worktreeに委ねる
次の場合は、ワークツリーの専門家を優先してください。
- ユーザーがワークツリーによる分離を明示的に求めている
- マージのリスクが高い、または複数の手順が必要である
- 速度よりもクリーンアップや再試行の安全性が重要である
マージ方法と準備状況のルールについては、references/merge-strategies.md を読み込んでください。
成功条件:マージがブロックされるか、その場での実行が承認されるか、ワークツリーの専門家に引き継がれること。
ステップ 2:バックアップポイントを作成してマージを実行する
複雑なマージや破壊的なロールバックの前に、タグなどのバックアップ参照を作成してください。
その後、要求された操作を実行します。
- 適切な場合は
ghを使って PR をマージする - 選択した方法でブランチをマージする
- 進行中のマージで発生した競合を解決する
ルール:
- ユーザーが明示的に上書きを求めていない限り、CI が失敗している状態でマージしないでください
- 競合のどちらか一方を暗黙のうちに破棄しないでください
- ロックファイルは手動編集せず、再生成してください
- 要求に合った、最も影響の小さい安全なマージ方法を使用してください
競合の段階と復旧方法については、references/conflict-and-rollback.md を読み込んでください。
成功条件:マージまたは競合解決が完了し、Git の状態に矛盾がないこと。
ステップ 3:クリーンアップまたはプッシュの前に検証する
次のうち、最も関連性の高い検査で結果を検証します。
git status- 競合が解消されていること
- 必要に応じてビルド、テスト、型チェックのコマンド
- ブランチ構成の確認
ルール:
- 未解決の競合や検証の失敗が残っている場合は、成功を主張しないでください
- 検証に失敗した場合は、クリーンアップやプッシュを行わず、中断して復旧してください
- ロールバックが必要な場合は、独自に方法を考えず、復旧ガイダンスに従ってください
成功条件:マージ結果が検証済みであるか、失敗状態が明確に特定されていること。
ステップ 4:結果を報告し、安全にクリーンアップまたはロールバックする
結果に応じて、次の対応を行います。
- マージ結果を報告する
- 必要に応じて PR にコメントする
- マージ済みのブランチを慎重にクリーンアップする
- ブランチの種類に応じて、最も安全な方法でロールバックする
ルール:
- 共有ブランチでは、
git resetよりもgit revertを優先する - マージ済みであることが確認できている場合、またはユーザーから明示的に依頼された場合を除き、ブランチを削除しない
- 破壊的なクリーンアップや強制プッシュを行う前に警告する
- マージが worktree specialist に委任された場合は、その振り分けを明確に報告する
ロールバックとクリーンアップのルールについては、references/conflict-and-rollback.md を読み込みます。
成功基準:ユーザーが結果、実施したクリーンアップ、および残っている Git の状態を確認できること。
ガードレール
- このスキルは Git の履歴とブランチの状態を変更するため、モデルが自発的に呼び出せないようにします。
context: forkは追加しないでください。分離が必要な場合は、worktree specialist を使用してください。paths:は追加しないでください。これは汎用的な Git ワークフロースキルです。- 巨大な例、コマンドの百科事典、長大な失敗事例の一覧を
SKILL.mdにインラインで含めないでください。 - 未解決の競合がある状態でマージしないでください。
- 明示的な承認なしに、ユーザーのブランチを削除したり、共有ブランチへ強制プッシュしたりしないでください。
参照資料を読み込むタイミング
-
references/merge-expertise.mdセッション開始時に、役割と専門知識を確認するために使用します。 -
references/merge-strategies.mdマージ方法の選択、PR の準備状況の確認、GitHub CLI の使用、および worktree specialist への振り分けに使用します。 -
references/conflict-and-rollback.md競合の段階、ロックファイルの処理、ロールバック方法、およびクリーンアップのルールに使用します。
出力要件
次の内容を報告します。
- 依頼されたマージまたはロールバック操作
- 選択した実行モードとマージ戦略
- 準備状況/検証状況
- 解決した競合、作成したバックアップ参照、または実施したロールバック操作
- 最終的な Git の状態と、実施したクリーンアップ