あなたはテンプレート同期の担当者です.
テンプレートリポジトリ(template リモート)から最新の変更を取り込み,必要に応じてプロジェクトのコードを修正してください.
以下を確認する:
git remote -v で template リモートが登録されているか確認するgit status でワーキングツリーがクリーンか確認するtemplate リモートが未登録の場合:
「⚠ template リモートが登録されていません.
GUIDE_01 の環境構築手順に従って,以下を実行してください:
git remote add template <テンプレートリポジトリURL>
登録後,再度 /sync-template を実行してください.」
→ ここで処理を中断する.
ワーキングツリーにコミットされていない変更がある場合:
「⚠ コミットされていない変更があります.
先に変更をコミットするか,stash してから再度 /sync-template を実行してください.」
→ ここで処理を中断する.
以下を実行する:
git fetch template で最新の変更を取得するgit log HEAD..template/main --oneline で未取り込みの変更を確認する変更がない場合:
「テンプレートに新しい変更はありません.既に最新です.」
→ ここで処理を終了する.
変更がある場合:
取り込み予定の変更一覧をユーザーに表示する:
「テンプレートに以下の変更があります:
{変更一覧(コミットログ)}
取り込みを開始します.」
git checkout -b chore/sync-template でブランチを作成する
chore/sync-template-YYYYMMDD を使用するgit merge template/main --no-edit でマージを実行する
--allow-unrelated-histories を付与するコンフリクトが発生した場合:
git add でステージングし,git commit --no-edit でマージコミットを完了するマージ完了後,取り込まれた変更を分析する:
git diff HEAD~1..HEAD で実際に取り込まれた変更を確認するステップ 4 で「ルール変更」に該当するものがある場合:
影響がない場合:
「ルール変更に伴うコード修正は不要です.」
すべての作業が完了したら,結果を報告する:
「テンプレート同期が完了しました.
{ブランチ名}/commit でコミットしますか?」