共用方式為


在 Microsoft 開發箱上最佳化 Visual Studio 體驗

使用 Visual Studio 17.8,您可以嘗試預先快取適用於 Microsoft 開發箱的 Visual Studio 解決方案。 載入專案時,Visual Studio 會編制檔案索引並產生中繼資料,以啟用完整的 IDE 功能套件。 因此,第一次載入大型專案時,Visual Studio 有時可能需要相當長的時間。 使用 Microsoft 開發箱上的 Visual Studio 快取,您現在可以預先產生此啟動資料,並將其提供給 Visual Studio 作為自訂 Microsoft 開發箱映像的一部分。 這表示當您從包含 Visual Studio 快取的自訂映像建立 Microsoft 開發箱時,您可以登入 Microsoft 開發箱並立即開始處理您的專案。

在 Microsoft 開發箱映像上預先快取 Visual Studio 解決方案的優勢包括:

  • 您可以縮短第一次載入解決方案所需的時間。
  • 您可以在 Visual Studio 中快速存取和使用重要的 IDE 功能,例如尋找檔案Intellisense
  • 您可以改善大型存放庫上的 Git 效能。

注意

從 Visual Studio 解決方案的預先快取開始時間提升效能,會因解決方案的複雜度而有所不同。

必要條件

若要利用 Microsoft 開發箱上原始程式碼和 Visual Studio IDE 自訂的預先快取,您需要符合下列需求:

在 Microsoft 開發箱映像中啟用 Visual Studio 快取

您可以在建置自訂 Microsoft 開發箱映像的自動化管線中產生 Visual Studio 解決方案的快取。 若要在 Microsoft 開發箱映像中啟用 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 計算資源庫之後提供給 Microsoft 開發箱使用者使用。 然後,您可以根據此映像建立新的 Microsoft 開發箱

    /Build 旗標是選擇性的,但如果沒有該旗標,則一些需要組建完成的快取將無法使用。 如需 build 命令的詳細資訊,請參閱組建命令列參考

當 Microsoft 開發箱使用者根據自訂映像開啟 Microsoft 開發箱上的解決方案時,Visual Studio 會讀取已產生的快取,並完全略過快取產生。

在 Microsoft 開發箱映像中啟用 Git 認可圖表最佳化

除了獨立認可圖表功能之外,您也可以在產生自訂 Microsoft 開發箱映像的自動化管線中啟用認可圖表最佳化。

如果您符合下列需求,您可以在 Microsoft 開發箱映像中啟用 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 計算資源庫之後提供給 Microsoft 開發箱使用者使用。

下一步

開始使用 Microsoft 開發箱中的 Visual Studio 預先快取:

我們很樂於透過開發人員社群,聽到您在 Microsoft 開發箱中 Visual Studio 預先快取的意見反應、輸入和建議。