بنقرة واحدة
cherry-pick-pr
featureブランチのコミットを別ベースブランチ(qa/staging/release等)へcherry-pick PR する。main汚染を避けるための短命ブランチ経由PR作成ワークフロー。
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
featureブランチのコミットを別ベースブランチ(qa/staging/release等)へcherry-pick PR する。main汚染を避けるための短命ブランチ経由PR作成ワークフロー。
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
修正を複数ブランチに適用する際のブランチ戦略。featureブランチへの先行commitとcherry-pickによる短命branchへの適用手順。環境別branch(qa/staging/epsilon等)への修正適用時に参照する。
DeepWiki (Devin MCP) のドキュメント内容を対象リポジトリの Markdown ファイルとして転載する。セクション構成維持・番号付きファイル分割・GFM 準拠補正・日本語翻訳 (オプション) まで自動処理。
PRのレビューコメントを確認し、優先度に応じてコード修正を実行する。サブエージェント (general-purpose) 起動にも対応。--defer-nit / --severity-min で対応範囲を制御。
実装プランファイル作成・更新の手順。実装開始時およびPR作成時にissues/配下の実装プランの有無を確認し、なければ会話履歴・git log・git diffから生成する。複数ファイル変更・新規機能追加・DBマイグレーション伴う変更が対象。
調査レポート作成のルール。否定的結論のエビデンス要件、残課題の記載フォーマット、ハルシネーション防止のための裏取り原則を扱う。DB調査に限らずコードベース調査・仕様調査一般に適用。
ログを追加・修正する際のガイドライン。ログレベルの選択基準、ループ内ログの制御、エラー蓄積パターン、機密情報の扱いを扱う。言語/FW非依存の原則。
| name | cherry-pick-pr |
| description | featureブランチのコミットを別ベースブランチ(qa/staging/release等)へcherry-pick PR する。main汚染を避けるための短命ブランチ経由PR作成ワークフロー。 |
| argument-hint | <base-branch> (例: qa/staging, release/v2) |
| disable-model-invocation | true |
| allowed-tools | ["Bash","Read","Grep"] |
featureブランチから指定ベースブランチへ、短命ブランチ経由で cherry-pick PR を作成する。feature → main の PR にベースブランチ固有コードが混入するのを防ぐ。
/ndf:cherry-pick-pr qa/staging
/ndf:cherry-pick-pr release/v2
featureブランチに環境ブランチ(qa/staging等)を merge して conflict を解消すると、feature → main の PR に環境ブランチ固有のコードが混入する(main汚染)。短命ブランチ + cherry-pick で、必要なコミットだけを対象ブランチに届ける。
詳細な原則は /ndf:branch-fix-strategy スキル参照。
git branch --show-current で現在ブランチを取得同じベースブランチ向けの短命ブランチに既存PRがないか確認する。
# 同名パターンのブランチでマージ済みPRがないか確認
gh pr list --head "<current-branch>-for-<base-short-name>" --state merged \
--json number,mergedAt --jq '.[]'
マージ済みPRが見つかった場合、同じブランチ名は使えない。サフィックスを付ける(例: -v2, -v3)。
git log --oneline main..HEAD
ユーザーに cherry-pick 対象コミットを確認(全コミット or 選択)。
git fetch origin <base-branch>
git checkout -b <current-branch>-for-<base-short-name> origin/<base-branch>
<base-short-name>: ベースブランチのスラッシュ以降(例: qa/staging → staging)feature/add-auth-for-staginggit fetch origin main
git merge origin/main --no-edit
CIで最新main必須のWorkflowがあるため、取り込み忘れるとconflictやCIエラーになる。
git cherry-pick -x <commit-hash-1> <commit-hash-2> ...
-x オプションで元のcommit hashが参照として残り、追跡性が向上する。
conflict が発生した場合:
git diff --name-only --diff-filter=U でconflictファイル一覧git cherry-pick --continuegit push -u origin <short-lived-branch>
gh pr create --base <base-branch> --title "<タイトル>" --body "$(cat <<'EOF'
## Summary
- feature/xxx からcherry-pickした<環境名>向けPR
- 元コミット: <hash一覧>
## Test plan
- [ ] <環境名>で動作確認
<!-- I want to review in Japanese. -->
EOF
)"
git checkout <original-branch>
feature → main の PR には影響しない-x オプションで元commit参照を残す(追跡性)/ndf:branch-fix-strategy — なぜこの手順が必要かの原則/ndf:pr — 通常のPR作成(base=main)/ndf:deploy — ブランチ全体を環境へデプロイ(cherry-pickとは別用途)