Microsoft Dev Box で Visual Studio エクスペリエンスを最適化する

Visual Studio 17.8 では、Microsoft Dev Box 用に Visual Studio ソリューションのプリキャッシュを試してみることができます。 プロジェクトを読み込むときに、Visual Studio はファイルのインデックスを作成し、メタデータを生成して、IDE 機能の完全なスイートを有効にします。 そのため、大規模なプロジェクトを初めて読み込むときに、Visual Studio はかなりの時間を費やすことがあります。 開発ボックスの Visual Studio キャッシュでは、このスタートアップ データを事前に生成し、それをカスタマイズした開発ボックス イメージの一部として Visual Studio で使用できるようになりました。 つまり、Visual Studio キャッシュが含まれているカスタム イメージから開発ボックスを作成すると、Microsoft Dev Box にログオンして、すぐにプロジェクトの作業を開始できるということです。

開発ボックス イメージに Visual Studio ソリューションをプリキャッシュする利点は次のとおりです。

  • 初めてソリューションを読み込むときにかかる時間を短縮できます。
  • Visual Studio の主要な IDE 機能 [フォルダーを指定して検索][Intellisense] などにすばやくアクセスして使用できます。
  • 大規模なリポジトリの Git のパフォーマンスを向上できます。

Note

Visual Studio ソリューションのプリキャッシュで得られる起動時間のパフォーマンス向上は、ソリューションの複雑さによって異なります。

前提条件

Microsoft Dev Box でソース コードと Visual Studio IDE カスタマイズのプリキャッシュを活用するには、次の要件を満たす必要があります。

開発ボックスで Visual Studio キャッシュを使用できるようにする

Visual Studio ソリューションのキャッシュは、カスタムの開発ボックス イメージをビルドするための自動化されたパイプラインの一部として生成できます。 開発ボックス イメージで Visual Studio キャッシュを使用できるようにするには:

  • Azure Resource Manager テンプレート内で、プロジェクトのソース リポジトリを VM のユーザー固有でない場所に複製するためのステップを追加します。

  • プロジェクト ソースがディスクに配置されたので、PopulateSolutionCache 機能を実行してプロジェクト キャッシュを生成できるようになりました。 これを実行するには、テンプレートのカスタマイズしたステップに次の PowerShell コマンドを追加します。

    # Add a command line flag to the Visual Studio devenv
    devenv SolutionName /PopulateSolutionCache /LocalCache /Build [SolnConfigName [/Project ProjName [/ProjectConfig ProjConfigName]] [/Out OutputFilename]]
    

    このコマンドにより、ソリューションが開かれ、ビルドが実行され、指定したソリューションのキャッシュが生成されます。 生成されたキャッシュは、カスタム イメージに含まれるようになり、接続された Azure Compute Gallery に投稿されると開発ボックスのユーザーが使用できるようになります。 その後は、このイメージに基づいて新しい開発ボックスを作成することができます。

    /Build フラグは省略可能ですが、このフラグがないと、ビルドの完了が必要な一部のキャッシュが使用できなくなります。 build コマンドの詳細については、Build コマンドライン リファレンスを参照してください。

開発ボックス ユーザーが、カスタマイズされたイメージに基づいて開発ボックスでソリューションを開くと、Visual Studio は既に生成されたキャッシュを読み取り、キャッシュの生成を完全にスキップするようになります。

開発ボックス イメージで Git コミット グラフの最適化を有効にする

スタンドアロンのコミット グラフ機能以外にも、カスタム開発ボックス イメージを生成するための自動化されたパイプラインの一部として、コミット グラフの最適化を有効にすることもできます。

次の要件を満たしている場合は、開発ボックス イメージで Git コミット グラフの最適化を有効にできます。

コミット グラフの最適化を有効にするには、カスタム イメージのビルド プロセスの一環として、Git リポジトリの場所から次の git コマンドを実行します。

# Enables the Git repo to use the commit-graph file, if the file is present 
git config --local core.commitGraph true

# Update the Git repository’s commit-graph file to contain all reachable commits
git commit-graph write --reachable

生成されたキャッシュは、カスタム イメージに含まれるようになり、接続された Azure Compute Gallery に投稿されると開発ボックスのユーザーが使用できるようになります。

次のステップ

Microsoft Dev Box での Visual Studio プリキャッシュの概要:

Developer Community から、Microsoft Dev Box での Visual Studio プリキャッシュに関するフィードバック、ご意見、ご提案をお寄せください。