キーワードで検索

今日を知り、明日を変えるシステム運用メディア

【速報】Microsoft Build 2025:Azure DevOpsとGitHubを組み合わせ、さらなる力を引き出す(講演レポート)

【速報】Microsoft Build 2025:Azure DevOpsとGitHubを組み合わせ、さらなる力を引き出す(講演レポート)

米時間2025年5月19日~22日、シアトルにて開催されているMicrosoft主催の開発者向けイベント「Microsoft Build 2025」。

本記事では、「Making Azure DevOps and GitHub Greater than the Sum of their Parts(Azure DevOpsとGitHubを組み合わせ、さらなる力を引き出す)」の講演内容をご紹介します。

セッション概要(公式)

公式サイトで公開されているセッション概要は、以下の通りです。

Azure DevOpsとGitHubの最新機能と今後の機能により、ワークフローが簡素化されます。GitHubリポジトリ、Copilot、Codespaces、Code Securityを活用することで、既存のAzure Boards、Azure Pipelines、テストプランとの連携を維持しながら、エンタープライズ規模の開発における開発者の生産性を向上させることができます。

Azure DevOps向けの新しいMCPサーバーにより、GitHub CopilotがAzure DevOpsのコンテキストを認識できるようになります。

参考:Making Azure DevOps and GitHub Greater than the Sum of their Parts

はじめに

本講演の目的は、Azure DevOpsとGitHubが単なる個別のツールではなく、統合によって強力なエコシステムを形成し、開発者生産性、トレーサビリティ、セキュリティを向上させることを示すことです。

特に、GitHub CopilotやGitHub Advanced Securityの活用、データレジデンシーの対応、そしてMCPサーバーの導入に焦点が当てられました。

講演は、参加者のプロフィールを把握するための簡単なアンケートから開始。Azure DevOpsを利用している参加者が多く、リポジトリをGitHubに移行した企業は少数であることが確認されたため、両プラットフォームの現状と統合のメリットを詳しく解説する構成が採用されました。

Azure DevOpsとGitHubは、統合されるのか?

登壇者であるマイクロソフトのダン・へレム氏(以下、ダン氏)は、Azure DevOpsとGitHubの関係について「よくAzure DevOpsはなくなるのか?GitHubにすべて移行されるのか?と質問されるが、どちらかを選ぶ事はない。両者を連携させることで、それぞれの強みを最大限に引き出す」と述べます。

Microsoftは、Azure DevOpsとGitHubの統合機能に投資。これにより、ユーザーはAzure DevOpsのリポジトリをGitHubに移行し、GitHubの素晴らしい機能を利用しつつ、コードや作業項目などの完全なトレーサビリティをAzure DevOpsで維持できます。

たとえば、GitHubでプルリクエストを作成し、それをAzure DevOpsの作業項目に自動リンクする機能が強化され、開発プロセス全体の可視性と管理性が向上しています。

デモ① Azure DevOps内でGitHub Copilotを活用

講演の中心は、Azure DevOpsとGitHubの統合によるメリットを具体的なデモで示すセクションでした。2つの主要シナリオを通じて、統合の実際のワークフローを紹介します。

最初のデモでは、コードがAzure DevOpsのリポジトリ(Azure Repos)に残ったまま、GitHub Copilotを活用するシナリオが示されました。

Contoso(マイクロソフトがドキュメントなどで度々利用する、架空の企業名)が、アメリカの大手貿易商社Parts Unlimited社を買収したという仮想シナリオを例に、ブランド名を「Fabrikam」から「Contoso」に変更する作業のデモを実演しました。以下、デモの流れです。

環境設定

Azure DevOpsのプロジェクト内で、「.github/copilot-instructions.mdファイル」に技術スタック(例:Azure Pipelinesを使用、Playwrightを優先)やプロジェクトのコンテキストを記載。このファイルはCopilotが自動的に参照し、コード解析や提案の精度を高めます。

Visual Studio Code内でCopilotを利用

Visual Studio Code内でCopilotを起動し、「Askモード」で「このワークスペースのコードは何をするものか?技術スタックは?」と質問。Copilotは、「.github/copilot-instructions.mdファイル」を基に、プロジェクトがAzure Pipelinesを使用し、Playwrightを優先するテスト方針であることを正確に回答しました。

ユーザーストーリーで、変更点を自動特定

次は、Azure Boardsのユーザーストーリーに、ブランド名変更の指示が記載されている例が紹介されます。Copilotの「エージェントモード」に切り替え、Claude 3.7 Sonnetモデルを選択。「FabrikamをContosoに変更するにはどこを修正すべきか?テストも更新して」と指示すると、Copilotはレイアウトファイル、テストファイル、インフラコード(Azureリソースのタグ)を特定し、変更を提案しました。

コード変更とレビュー

Copilotが提案した変更を自動適用させる際、開発者は「Keep(保存)」または「Undo(元に戻す)」が選択可能、最終決定権を保持できます。変更をコミットする際、Copilotが自動生成した詳細なコミットメッセージ(例:「FabrikamからContosoへのブランド名変更、テストとレイアウト更新」)を利用し、コードレビューの透明性を向上させます。

GitHub Advanced Securityの活用

Azure DevOps内で依存関係のスキャンやコードスキャンを実施。たとえば、シークレットスキャンやプッシュ保護が利用可能。ただし、このシナリオではCopilotやGitHub Advanced Securityの機能が一部に限定される点が強調されました。

まとめ

このデモは、Azure DevOpsユーザーがGitHub Copilotを即座に活用し、生産性を向上させる方法を示しました。特に、Copilot Visionやエージェントモードが、コード解析や自動修正を効率化する強力なツールであることが実証されました。

デモ② GitHubへのリポジトリ移行後の統合

2つ目のデモでは、リポジトリをGitHubに移行した場合のワークフローを紹介。GitHubのフル機能(Copilot Chat、GitHub Advanced Security、Codespacesなど)を活用しつつ、Azure DevOpsのAzure Boards、Azure Pipelinesとの統合を維持する方法が示されました。

リポジトリをGitHubに移行するメリット

GitHubへの移行により、開発者生産性が最大化され、依存関係のセキュリティが強化されます。たとえば、GitHub上でCopilot Chatを利用してリポジトリのコードを直接質問したり、詳細なプルリクエストの説明を自動生成したりできます。

プルリクエストとコードレビュー

GitHub上でプルリクエストを作成し、Copilotに初期コードレビューを依頼。Copilotは構文エラーや軽微な問題を検出し、修正提案を行います。

これにより、確認、見直しを行うレビュアーは重要な変更に集中できます。プルリクエストにはAzure DevOpsの作業項目が自動でリンクされ、トレーサビリティが確保されます。

GitHub Advanced Securityの強化

GitHub Advanced Securityは、プルリクエスト内で脆弱性を検出(例:クロスサイトリクエストフォージェリ(CSRF)のトークンが欠如)しました。

Copilot AutoFixが具体的な修正コード(例:行にトークン検証を追加)を提案し、開発者がコミット前に確認・適用可能。これにより、脆弱性が本番環境に到達する前に修正される「Found Means Fixed」のアプローチが実現。

GitHubとAzure Pipelinesのシームレスな統合

GitHubのプルリクエストからAzure Pipelinesのテスト結果を直接確認。テスト失敗時には詳細をドリルダウンし、作業項目やコミットへのリンクも表示されます。このシームレスな統合により、開発者は2つのプラットフォーム間をスムーズに行き来できます。

Codespacesの活用

GitHubのCodespaces(ブラウザ内で動作するVisual Studio Code)を使用し、プロジェクト固有の拡張機能や接続文字列をリポジトリ内の設定ファイルで管理。開発者は数分で開発環境を構築でき、複数プロジェクト間の切り替えも容易です。

まとめ

このデモは、GitHubへの移行がもたらす生産性向上とセキュリティ強化の具体例を示しました。特に、Copilot AutoFixやCodespacesが、開発者のワークフローを効率化し、セキュリティを強化する点が強調されていました。

統合のスケーラビリティが、1500リポジトリに対応

続いて、統合のスケーラビリティについての補足が語られます。

初期の統合では、Azure DevOpsプロジェクトに接続できるリポジトリ数が250~500に制限されていましたが、最新の改良により1,500リポジトリに対応。さらに、近いうちに2,000リポジトリまで拡張予定です。

また、最初は少数のリポジトリから始め、徐々に増やし、最終的には何千ものリポジトリを移行した顧客もいるとした上で、「昨日、このイベントの展示フロアで10,000以上のリポジトリをGitHubに移行し、統合を利用している顧客と話しました」というエピソードが語られ、統合が大規模環境でも安定して動作すると強調されました。

GitHub Enterprise Cloud、データレジデンシーを開始

GitHub Enterprise Cloudは、欧州、オーストラリア、米国でのデータレジデンシーの対応を新たに開始しました。これにより、Azure DevOpsの9つのAzureリージョンに依存していた顧客が、GitHubでも地域ごとのデータ保存要件を満たせるようになりました。具体的には、以下のような企業向け機能が提供されます。

  • 独自の名前空間:github.comとは分離された企業専用の名前空間(GHE.com)
  • ユーザー管理の強化:組織がユーザーアカウントを詳細に管理・制御
  • ゾーンベースの事業継続性:災害復旧をサポートする高可用性

これらの機能は、セキュリティとコンプライアンスのニーズを満たし、特に欧州やオーストラリアの顧客にとって重要な進化です。Azure DevOpsとの統合も、データレジデンシー対応のGitHub Enterprise Cloudで動作するよう改良されており、プレビュー版として提供中です。

【近日公開】開発タスクを自動化─MCPサーバー

他にも、講演のハイライトとして、近日公開予定の「MCPサーバー」が紹介されました。

これは、Azure DevOpsとGitHub Copilotの間に位置するサーバーレイヤーで、REST APIを介してAzure DevOpsのデータにアクセスし、開発タスクを自動化するツールです。以下は、デモで示された実用例です。

イテレーション管理の自動化

課題Azure DevOpsで新年のイテレーションを追加。チームに割り当てる作業は手動で30~40分かかる。
デモCopilotに「2025年のイテレーションを既存のパターンで作成し、チームに割り当てて」と指示。MCPサーバーがREST APIを呼び出し、イテレーションを一括生成し、チームに自動割り当て。作業時間は数分に短縮。
ポイントモデルが指示を超えて「チーム割り当て」を提案し、自動実行。開発者は結果を確認するだけで済む。

作業項目の管理

課題Visual Studio Code内で作業項目を管理したいが、Azure DevOpsのUIに移動するのは非効率。
デモ1. Copilotに「プロジェクト一覧を取得」と指示。MCPサーバーがAPIを呼び出し、プロジェクトリストを返答。

2.「○○プロジェクトの作業項目一覧を取得」と指示。APIがIDのみ返すため、モデルが自動的に詳細(タイトル、状態、優先度など)を取得し、コメントも抽出。

3.作業項目の優先度を3から1に、状態を「Committed」に変更(意図的に「Commited」と誤入力)。モデルが誤りを修正し、バッチ処理で更新。更新後、変更前後の比較を自動表示。
ポイント開発者はIDE(統合開発環境)を離れることなく、作業項目を効率的に管理。モデルの賢さが、詳細取得や誤り訂正を自動化。

Backlogの整理

課題Backlogの特徴(Feature)欄にタイトルしかなく、説明やタグが欠如。
デモ1.Copilotに「プロジェクトとチームを取得し、特徴レベルのBacklogを特定」と指示。MCPサーバーがAPIを呼び出し、Backlog情報を取得。

2.「全特徴にHTML形式の詳細な説明を生成し、タグを付与」と指示。モデルが各特徴を解析し、説明を生成(例:明確で詳細なHTMLフォーマット)。バッチ処理で更新し、タグを自動付与。

3.結果として、Backlogにタグと説明が追加され、管理が大幅に改善。
ポイント大規模Backlogの整理を自動化。モデルがプレビューを省略し、直接保存する設定も可能。

【2025年5月下旬~6月上旬】パブリックプレビューを公開予定

MCPサーバーは、2週間以内にパブリックプレビューとして公開予定。ブログで詳細が発表されます。将来的には、Azure DevOps内でGitHubのようなコーディングエージェント機能(例:作業項目からコード生成)を実現する基盤となる予定です。

アクションの呼びかけ

講演の締めくくりとして、いくつかのアクションが提案されました。

即時利用GitHub CopilotをVisual Studio Code、Visual Studio、JetBrains、Xcode、Eclipseで活用。Visionやエージェントモードを試し、生産性を向上。
移行計画GitHub Enterprise Importerを使用してリポジトリ移行を計画。プルリクエスト履歴や作業項目リンクを保持し、大規模移行に対応。移行後、自動でAzure DevOpsとの接続を設定。
フル活用GitHubへの移行により、Copilotの全機能(コーディングエージェント、Dependabotによる依存関係保護、コードスキャン、シークレット保護)を活用。セキュリティキャンペーン(例:クロスサイトスクリプティング対策)で脆弱性を効率的に解消。
MCPサーバーの活用MCPサーバーがリリースされたら試し、開発プロセスの自動化を推進。リリース日はブログで最新情報を確認。

まとめ

本講演は、Azure DevOpsとGitHubの統合が、開発者生産性、トレーサビリティ、セキュリティを飛躍的に向上させるエコシステムを形成していることを明確に示しました。

GitHub CopilotやGitHub Advanced Securityの活用により、コード品質とセキュリティを確保が可能。データレジデンシーの対応強化により、グローバル企業のコンプライアンスニーズにも応えられるようになりました。また、MCPサーバーの導入は、開発プロセスの自動化をさらに加速し、Backlog管理や作業項目更新などの手間を大幅に削減します。

Microsoftは、両プラットフォームの進化と統合を通じて、開発者コミュニティに革新的な価値を提供し続ける姿勢を強く打ち出しました。

最新情報をお届けします!

最新のITトレンドやセキュリティ対策の情報を、メルマガでいち早く受け取りませんか?ぜひご登録ください

メルマガ登録

最新情報をお届けします!

最新のITトレンドやセキュリティ対策の情報を、メルマガでいち早く受け取りませんか?ぜひご登録ください

メルマガ登録