Dela via


Optimera Visual Studio-upplevelsen på Microsoft Dev Box

Med Visual Studio 17.8 kan du prova att förinstallera Visual Studio-lösningar för Microsoft Dev Box. Vid inläsning av projekt indexerar Visual Studio filer och genererar metadata för att aktivera hela sviten med IDE-funktioner . Visual Studio kan därför ibland ta lång tid att läsa in stora projekt för första gången. Med Visual Studio-cacheminnen i dev box kan du nu förgenerera startdata och göra dem tillgängliga för Visual Studio som en del av din anpassade dev box-bild. Det innebär att när du skapar en utvecklingsruta från en anpassad bild, inklusive Visual Studio-cacheminnen, kan du logga in på en Microsoft Dev Box och börja arbeta med projektet direkt.

Fördelarna med att förinstallera din Visual Studio-lösning på en dev box-bild är:

  • Du kan minska den tid det tar att läsa in lösningen för första gången.
  • Du kan snabbt komma åt och använda viktiga IDE-funktioner som Find In Files och Intellisense i Visual Studio.
  • Du kan förbättra Git-prestanda på stora lagringsplatser.

Kommentar

Prestandaökningarna i starttiden från förinläsningen av Visual Studio-lösningen varierar beroende på lösningens komplexitet.

Förutsättningar

Om du vill använda förinläsning av källkoden och Visual Studio IDE-anpassningar på Microsoft Dev Box måste du uppfylla följande krav:

Aktivera Visual Studio-cacheminnen i dev box-bilder

Du kan generera cacheminnen för din Visual Studio-lösning som en del av en automatiserad pipeline som skapar anpassade dev box-avbildningar. Så här aktiverar du Visual Studio-cacheminnen i dev box-avbildningen:

  • I Azure Resource Manager-mallen lägger du till ett anpassat steg för att klona källlagringsplatsen för projektet till en icke-användarspecifik plats på den virtuella datorn.

  • Med projektkällan på disken PopulateSolutionCache kan du nu köra funktionen för att generera projektets cacheminnen. Det gör du genom att lägga till följande PowerShell-kommando i mallens anpassade steg:

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

    Det här kommandot öppnar din lösning, kör en version och genererar cacheminnena för den angivna lösningen. De genererade cacheminnena inkluderas sedan i den anpassade avbildningen och är tillgängliga för dev box-användare när de har publicerats i ett anslutet Azure Compute-galleri. Du kan sedan skapa en ny utvecklingsruta baserat på den här avbildningen.

    Flaggan /Build är valfri, men utan den är vissa cacheminnen som kräver att en version har slutförts inte tillgänglig. Mer information om kommandot finns i build Skapa kommandoradsreferens.

När en dev box-användare öppnar lösningen på en utvecklingsruta baserat på den anpassade bilden läser Visual Studio de redan genererade cacheminnena och hoppar över cachegenereringen helt och hållet.

Aktivera Git commit-graph-optimeringar i dev box-bilder

Utöver funktionen för fristående incheckningsdiagram kan du även aktivera incheckningsgrafoptimeringar som en del av en automatiserad pipeline som genererar anpassade dev box-avbildningar.

Du kan aktivera Git commit-graph-optimeringar i dev box-avbildningen om du uppfyller följande krav:

Om du vill aktivera optimeringen av incheckningsdiagrammet kör du följande git kommandon från git-lagringsplatsens plats som en del av processen för att skapa anpassade avbildningar:

# 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

De genererade cacheminnena inkluderas sedan i den anpassade avbildningen och är tillgängliga för dev box-användare när de har publicerats i ett anslutet Azure Compute-galleri.

Nästa steg

Kom igång med Visual Studio-precaching i Microsoft Dev Box:

Vi vill gärna höra din feedback, dina indata och förslag på Visual Studio-precaching i Microsoft Dev Box via utvecklarcommunityn.