コンテンツにスキップ

いいです。 あなたの流れ(Qt5.12 → Qt5.15 → Qt6.8、CLIメイン、VS Codeで差分確認)に合わせて、GitHub Copilotへ依頼するための計画をそのまま使える形で作ります。


全体方針(Copilotに依頼する順番)

目的

  • 一気に移植しない
  • 段階的に進める
  • 各段階で差分確認・ビルド確認を入れる

フェーズ

  1. 調査・計画(まだ実装しない)
  2. Qt5.12 → Qt5.15 対応
  3. Qt5.15で警告整理・安定化
  4. Qt5.15 → Qt6.8 移植
  5. 最終確認(ビルド・動作・差分レビュー)

Copilotに依頼する計画(実行順)

Phase 0: 事前準備(人間側)

Copilotに入る前にやることです。

  • 移植用ブランチ作成(例: feature/qt6-porting
  • 現在のビルド手順をメモ化
  • 現在の実行確認ポイントをメモ化

  • 起動できるか

  • 主要画面表示
  • 主要機能(保存/通信/描画など)
  • 依存ライブラリ一覧を整理(Qt以外も)

👉 これはCopilotの精度を上げるために効きます。


Phase 1: まずは「調査と計画」だけ依頼(実装禁止)

ここが最重要です。 Copilot CLIのPlan modeで使う前提の依頼です。

依頼プロンプト(そのまま使える)

まだ実装しないで。Plan modeで、Qt 5.12 から Qt 5.15 → Qt 6.8 へ段階移行するための計画を作ってください。

目的:
- 既存アプリを安全に Qt6.8 へ移行したい
- まずは Qt5.15 を経由して段階的に進めたい

やってほしいこと:
1. このリポジトリの Qt 関連コードとビルド設定(CMakeLists.txt / *.pro / *.pri / CI設定)を調査
2. Qt5依存箇所を洗い出し(モジュール/API/ビルド設定)
3. Qt5.12→5.15 で先に対応すべき点を整理
4. Qt5.15→6.8 で問題になりそうな点を整理
5. 影響範囲をファイル・モジュール単位で整理
6. フェーズ別の実装計画を作成(まだ実装しない)
7. 未決事項・確認質問を列挙

出力形式:
- 現状整理
- ビルド構成整理(qmake/CMake/CI)
- Qt依存箇所一覧
- Qt5.12→5.15 の先行対応ポイント
- Qt5.15→6.8 の移植ポイント
- 影響範囲(ファイル/モジュール)
- 未決事項(質問)
- 実装計画(フェーズ別)

注意:
- まだコードは変更しない
- 推測と確認済みを分ける
- 大量一括変更を前提にしない

Phase 2: Qt5.12 → Qt5.15 の先行対応を依頼

ここでは 「橋渡し段階」 を作ります。

Copilotへの依頼方針

  • 変更対象を絞る
  • 1タスクごとに進める
  • 必ずビルド確認を挟む

依頼の分割例(おすすめ)

2-1. ビルド設定だけ

Qt5.12 → Qt5.15 対応の最初のステップとして、ビルド設定の差分だけを確認・提案してください。
まだコード実装は大きく変更しないでください。

対象:
- CMakeLists.txt / *.pro / *.pri / CI設定

出力:
- 変更が必要な箇所
- 変更理由
- 最小変更案
- リスク

2-2. deprecated警告対策の候補抽出

Qt5.15 でのビルドを前提に、Qt6移行時に問題になりそうな deprecated API / 非推奨な書き方を洗い出してください。
まだ一括修正はしないでください。

出力:
- 該当箇所(ファイル/関数)
- 問題点
- 推奨置換案
- Qt5.15段階で直すべき優先度(Must/Should/Could)

2-3. 機械的に直せるものだけ修正

Qt5.15 移行のために、影響が小さく機械的に修正できる箇所だけを変更してください。
条件:
- 変更対象は [対象ファイル/フォルダ] に限定
- ロジック変更はしない
- 変更内容の一覧を最後に出す

Phase 3: Qt5.15 段階での安定化(警告整理・動作確認準備)

このフェーズは地味だけど大事です。

Copilotへの依頼

  • 「警告整理」を優先
  • 「危険変更は提案だけ」にする
現在の Qt5.15 対応状態を前提に、Qt6移行前に解消しておくべき警告・非推奨APIを整理してください。

やってほしいこと:
1. Qt関連の警告要因候補を列挙
2. Qt6で破綻しやすい箇所を優先度付きで整理
3. 機械的修正で済むものと、設計判断が必要なものを分ける

出力:
- 優先度付き一覧(Must/Should/Could)
- 機械的修正候補
- 設計判断が必要な候補
- 推奨対応順

Phase 4: Qt5.15 → Qt6.8 の本移植計画を依頼

ここでもまずはPlan modeで再計画するのが安全です(状況が変わっているため)。

再計画プロンプト

まだ実装しないで。Plan modeで、現在の Qt5.15 対応済みコードを Qt6.8 に移行する実装計画を作ってください。

やってほしいこと:
1. 現在のコードとビルド設定を確認
2. Qt6.8で問題になる API / モジュール / 設定差分を整理
3. 影響範囲をファイル・機能単位で整理
4. フェーズ別の移植計画を作る(ビルド設定→コンパイル修正→実行時挙動確認)
5. 未決事項を質問として列挙

出力:
- 現状整理(Qt5.15時点)
- Qt6.8移植ポイント
- 影響範囲
- 未決事項(質問)
- 実装計画(フェーズ別)
- テスト観点(最低限確認すべき動作)

Phase 5: Qt6.8移植の実装依頼(小分け)

ここは一気にやらないのがコツです。

依頼ルール(おすすめ)

  • 1回の依頼で1テーマ
  • 対象ファイルを明示
  • 最後に変更一覧を出させる
  • ビルドコマンド/確認コマンドも出させる

依頼テンプレ(実装用)

以下のフェーズだけ実装してください。その他は変更しないでください。

フェーズ:
- [例: Qt6向けビルド設定の更新]
対象:
- [例: CMakeLists.txt, cmake/*.cmake]
制約:
- ロジック変更はしない
- 変更理由を各ファイルごとに説明する
- 最後に変更ファイル一覧を出す
- 想定されるビルド/実行確認コマンドを出す

VS Codeで差分確認する前提の運用ルール(超重要)

Copilotに依頼する計画に、最初からこのルールを含めると事故が減ります。

ルール

  • 変更はフェーズ単位
  • 1フェーズ1コミット
  • 変更対象ディレクトリを明示
  • 設定ファイル変更は必ず目視レビュー
  • テスト/ビルド成功でも差分レビューは省略しない

依頼計画をMarkdown化するテンプレ(おすすめ)

Copilotに依頼する前に、これを docs/qt-porting-plan.md に置くと運用しやすいです。

# Qt Porting Plan (Qt 5.12 -> 5.15 -> 6.8)

## Goal
- 既存アプリを段階的に Qt6.8 へ移行する
- Qt5.15 を経由してリスクを分割する

## Rules
- 一括移植しない
- 各フェーズでビルド確認
- 各フェーズで VS Code 差分確認
- 1フェーズ1コミット

## Phases
1. 調査・計画(実装しない)
2. Qt5.12 -> Qt5.15 ビルド設定調整
3. Qt5.15 警告整理 / deprecated対応
4. Qt5.15 -> Qt6.8 ビルド設定・API対応
5. 実行時確認 / 回帰確認

## Review checklist
- 変更ファイル一覧の確認
- 設定ファイル差分の確認
- Qt API置換の妥当性
- ロジック改変の有無
- ビルド/実行確認結果の記録

あなた向けのおすすめ(実践版)

最初の一手としては、これが一番いいです。

  1. Phase 1のPlanプロンプトをCopilot CLIへ投げる
  2. 出てきた計画を VS CodeでMarkdown保存
  3. 人間が未決事項を埋める
  4. フェーズごとに実装依頼
  5. 毎回 VS Codeで差分確認

必要なら次に、あなたのプロジェクト向けに Qt Widgets中心 / QML中心 / Network中心 のどれかに合わせて、Copilotに投げる依頼文をさらに具体化できます。