GitHub、merge conflict解消をCopilotの3クリック作業に縮めた

Merge conflictは開発フローの中でも特に高くつく摩擦だ。だいたいreviewが終わり、approvalもそろい、あとは取り込むだけという場面で表面化する。GitHubはこの痛みをかなり短い流れに変えようとしている。github.comの新しい Fix with Copilot ボタンは、prepopulated commentを投稿するとCopilot cloud agentにconflict解消を依頼する仕組みだ。

面白いのは、ただのボタン追加では終わらないことだ。GitHubによれば、Copilotはconflictを修正し、buildとtestがまだ通るかを確認し、その結果をpushする。しかも処理は自前のcloud-based development environmentで動く。つまり、これまでローカルでrebaseとconflict markerを抱えていた作業が、レビュー可能なagentワークフローへ移っていく。

GitHubは同時に、PR内での @copilot の使い方も改めて示した。ユーザーはpull request上で、failing GitHub Actions workflowの修正、code review commentへの対応、足りないunit testの追加などをCopilotに頼める。今回のconflict解消はその延長線上にある。Copilotはinline autocompleteから、review threadの中で範囲を区切った変更を引き受けるoperatorへと役割を広げている。

利用条件も現実的だ。GitHubはCopilot cloud agentがすべてのpaid Copilot planで使えるとしている。ただしCopilot BusinessとCopilot Enterpriseでは管理者の有効化が必要だ。だからこれは曖昧なデモではない。merge queueや長寿命branchでconflictが頻発するチームなら、今すぐ試せる機能だ。

次に見たいのは信頼の変化だ。チームがCopilotによるconflict解消とbranch検証を安心して受け入れ始めれば、merge前の後始末は個人が抱え込む儀式ではなくなる。任せて、レビューして、取り込む作業に変わる。