Mi GitHub Copilot frissítés?

GitHub Copilot frissítés egy GitHub Copilot ügynök, amely segít projekteket frissíteni a .NET újabb verzióira gyorsan és magabiztosan. Végigvezeti az értékelésen, a megoldási javaslatokon, a kódjavításokon és az ellenőrzésen a Visual Studio, a Visual Studio Code, a GitHub Copilot CLI és a GitHub.com felületein.

Használja ezt az ügynököt a következőre:

  • Frissítsen a .NET újabb verziójára.
  • Modernizálja a .NET-alkalmazást, különösen a .NET-keretrendszerről való frissítéskor.
  • Mérje fel az alkalmazás kódját, konfigurációját és függőségeit.
  • Ellenőrizze, hogy az alkalmazás sikeresen épül-e és tesztel-e.

Forgatókönyvek

Az ügynök több, végponttól végpontig tartó modernizálási munkafolyamatot, úgynevezett forgatókönyveket biztosít. Minden forgatókönyv egy felügyelt munkafolyamat, amely végigvezeti önt egy adott frissítési vagy migrálási típuson:

Scenario Description Példakérés
.NET verziófrissítés Frissítés a régebbi .NET verziókról a 8-.NET 9-re, 10-re vagy újabbra. "A megoldás frissítése a .NET 10 verzióra"
SDK-stílusú átalakítás Az örökölt projektformátumot SDK-stílusúvá alakítja. "Konvertálás SDK-stílusra"
Newtonsoft.Json frissítés A Newtonsoft.Json helyére System.Text.Json lép. "Frissítés a Newtonsoft.Json-ról"
SqlClient-frissítés Frissítések a System.Data.SqlClientről a Microsoft.Data.SqlClientre. "SqlClient frissítése"
Azure Functions frissítés Az Azure Functions frissítése a folyamaton belüli modellről izolált feldolgozói modellre. "Az Azure Functions-öm frissítése"
Szemantikus kernel ügynököknek Frissíti a Szemantikus kernel ügynököket a Microsoft ügynök-keretrendszerre. "Az SK-ügynökeim frissítése"
Aspire integráció Hozzáadja a Aspire belső hurkos és az Azure-beli üzembe helyezés támogatását. "Hozzáadás Aspire az alkalmazáshoz"
Aspire verziófrissítés A meglévő Aspire alkalmazásokat újabb verziókra frissíti. "Verzióm frissítése Aspire"
WebForms-to-Blazor frissítés Frissíti ASP.NET Web Forms alkalmazásokat a Blazorra. "Web Forms-alkalmazás migrálása a Blazorba"

Az összes forgatókönyv és a 30+ beépített frissítési képesség teljes körű ismertetését lásd: Forgatókönyvek és készségek referenciája.

Visszajelzés küldése

Microsoft értékeli a visszajelzést, és az ügynök továbbfejlesztésére használja. Küldjön visszajelzést az alábbi lehetőségek egyikével:

Prerequisites

Az ügynök használata előtt állítsa be GitHub Copilot frissítését a fejlesztői környezetben. A telepítés lépéseit lásd: Telepítés GitHub Copilot frissítés.

.NET-projektek frissítése

A frissítési ügynök a következő típusú C# és Visual Basic projektek frissítését támogatja:

  • ASP.NET Core (és az olyan kapcsolódó technológiák, mint az MVC, a Razor Pages és a Web API)
  • ASP.NET Web Forms
  • Blazor
  • Azure Functions
  • Windows megjelenítési alaprendszer (WPF)
  • Windows Forms
  • WinUI
  • .NET MAUI és Xamarin
  • Osztálykönyvtárak
  • Konzolalkalmazások
  • Tesztprojektek (MSTest, NUnit és xUnit)

Frissítés indításához lásd: .NET alkalmazás frissítése GitHub Copilot frissítéssel.

Támogatott frissítési útvonalak

Az ügynök a következő frissítési útvonalakat támogatja:

Source Target
.NET Keretrendszer (bármely verzió) .NET 8 vagy újabb
.NET Keretrendszer (bármely verzió) .NET-keretrendszer 4.8.1
.NET Core 1.x–3.x .NET 8 vagy újabb
.NET 5 vagy újabb .NET 8 vagy újabb

.NET-projektek migrálása az Azure-ba

A .NET-alkalmazások Azure való migrálásához használja a GitHub Copilot modernizálási ügynököt. A modernizálási ügynök Azure-specifikus forgatókönyveket kezel, például az adatbázis-migrálást, a tárolást, az identitást, az üzenetkezelést és az üzembe helyezést.

Frissítések monitorozása az irányítópulttal

A Frissítési irányítópult vizuális nézetet biztosít a frissítési munkamenetről GitHub Copilot parancssori felületen és GitHub Copilot alkalmazásban. A panelek segítségével nyomon követheti az általános előrehaladást, forgatókönyveket, feladatokat, projekteket, függőségeket, értékelési eredményeket, frissítési lehetőségeket és ügynöktevékenységeket.

Az irányítópult megnyitásához kérje meg Copilot, hogy jelenítse meg a frissítési munkamenet során. Az irányítópult jelenleg nem érhető el Visual Studio, Visual Studio Code vagy más azonosítókban. Az egyes panelekről további információt a Frissítési irányítópult frissítéseinek monitorozása című témakörben talál.

Hogyan működik?

Frissítési vagy migrálási folyamat elindításához lásd:

  1. Indítsa el az ügynököt az alábbi módszerek egyikével:

    • Visual Studio: Kattintson a jobb gombbal a megoldásra vagy projektre a Megoldáskezelő és válassza a Modernize lehetőséget. Másik lehetőségként nyissa meg a GitHub Copilot Chat ablakot, és írja be.@Modernize
    • Visual Studio Code: Nyissa meg a GitHub Copilot Chat panelt, és írja be a @upgrade.
    • GitHub Copilot parancssori felület: Írja be a @upgrade, majd a frissítési vagy migrálási kérést.
    • GitHub Copilot alkalmazás: Az Ügynökválasztóban válassza a lehetőségetUpgrade.
  2. Mondja el az ügynöknek, hogy mit frissítsen vagy migráljon.

Amikor megkéri a frissítési ügynököt az alkalmazás frissítésére, Copilot először arra kéri, hogy hozzon létre egy új ágat, ha Egy Git-adattárban dolgozik. Ezután Copilot értékeli a projektet, és futtat egy háromfázisú munkafolyamatot. Minden fázis Markdown-fájlokat .github/upgrades/{scenarioId} hoz létre az adattárában, így a folytatás előtt áttekintheti, mi következik. Ha .github/upgrades/{scenarioId} már létezik egy korábbi kísérletből, a Copilot megkérdezi, hogy folytatja-e a műveletet, vagy kezdjen-e újra.

Copilot a projekt struktúrájának, függőségeinek és kódmintáinak vizsgálatával kezdődik, hogy átfogó értékelést hozzon létre. A assessment.md fájl felsorolja a kompatibilitástörő változásokat, az API kompatibilitási problémáit, az elavult mintákat és a frissítési hatókört.

Az értékelés után Copilot a következő három szakaszt futtatja:

  1. Assessment: Copilot megvizsgálja a projektstruktúrát, a függőségeket és a kódmintákat, majd bemutatja a felülvizsgálathoz szükséges stratégiai döntéseket, például a frissítési stratégiát (alulról felfelé, felülről lefelé vagy egyszerre), a projektfrissítési megközelítést, a technológia modernizálási lehetőségeit és a kompatibilitás kezelését. Copilot mentette a megerősített döntéseket upgrade-options.md.

  2. Planning: Copilot az értékelést és a megerősített beállításokat részletes specifikációvá alakítja. A plan.md fájl a frissítési stratégiákat, a megközelítések újrabontását, a függőségi útvonalakat és a kockázatcsökkentéseket dokumentálja.

  3. Execution: Copilot a tervet szekvenciális, konkrét tevékenységekre bontja tasks.md érvényesítési feltételekkel. Minden tevékenység egyetlen módosítást ír le, és azt, hogy Copilot hogyan erősíti meg a sikerességét.

A frissítési lépések módosításához vagy a kontextus hozzáadásához szerkessze bármelyik Markdown-fájlt .github/upgrades/{scenarioId} mielőtt továbblépne.

Frissítési stratégiák

Az értékelési szakaszban az ügynök kiértékeli a megoldást, és az alábbi stratégiák egyikét javasolja:

Strategy Legjobb a számára Description
Alulról felfelé Nagy megoldások mély függőségi gráfokkal Először a hierarchia alján lévő projekteket frissíti, majd halad felfelé.
Felülről lefelé Gyors visszajelzés a fő alkalmazásról Először frissíti az alkalmazásprojektet, majd kijavítja a függőségeket.
Egyszerre Kicsi, egyszerű megoldások Az összes projektet egy lépésben frissíti.

Folyamatmódok

Az ügynök két olyan folyamatmódot támogat, amelyek szabályozzák, hogy mennyi ideig szünetel a bemenet:

  • Automatikus: Az ügynök az összes fázisban szüneteltetés nélkül működik, és csak a valódi blokkolóknál áll meg. Tapasztalt felhasználók és egyszerű frissítések esetén a legjobb.
  • Vezetett: Az ügynök minden fázishatárnál megáll, így a folytatás előtt átnézheti a tervet, az értékelést és a feladatokat. Első alkalommal használt felhasználók és összetett megoldások esetén a legjobb.

Váltson a módok között bármikor a "szüneteltetés" (irányított mód beírásához) vagy a "folytatás" (az automatikus mód megadásához).

Állapotkezelés

Az ügynök az összes frissítési állapotot a következő helyen .github/upgrades/{scenarioId}/tárolja: . A mappa a következőket tartalmazza:

Fájl Alkalmazás célja
assessment.md A megoldás elemzése
upgrade-options.md Megerősített frissítési döntések
plan.md Rendezett tevékenységterv
tasks.md Élő folyamat irányítópultja
scenario-instructions.md Az ügynök állandó memóriája, beleértve a beállításokat, a döntéseket és az egyéni utasításokat
tasks/{taskId}/task.md Tevékenységenkénti hatókör és környezet
tasks/{taskId}/progress-details.md Feladatonkénti végrehajtási jegyzetek és eredmények

Mivel minden állapot ebben a mappában található, bezárhatja az IDE-t, válthat a munkamenetek között, vagy válthat a fejlesztési környezetek között (például a VS Code-ban kezdheti, és folytathatja a Visual Studio). Az ügynök ott veszi fel, ahol abbahagyta.

Tip

Véglegesítse a .github/upgrades/ mappát az ágon. A véglegesített állapot biztonsági mentésként szolgál, és lehetővé teszi a csapattagok számára a frissítés előrehaladásának megtekintését.

A frissítés végrehajtása

Az egyes fázisok befejezése után szükség szerint tekintse át és módosítsa a létrehozott fájlokat, majd mondja meg Copilot, hogy folytassa a következő szakaszt.

Amikor eléri a Execution szakaszt, kérje meg Copilot, hogy indítsa el a frissítést. Ha Copilot problémába ütközik, megpróbálja azonosítani az okot, és kijavítani. Ha a Copilot nem tudja kijavítani a problémát, segítséget kér. Amikor beavatkozik, Copilot tanul a végrehajtott módosításokból, és megpróbálja automatikusan alkalmazni őket, ha a probléma ismét felmerül.

A frissítés eredményei

Mivel Copilot minden feladatot futtat, a tasks.md.github/upgrades/{scenarioId} fájlját frissíti minden lépés állapotával. A fájl áttekintésével monitorozza az előrehaladást. Copilot létrehoz egy Git-véglegesítést a folyamat minden részére, így visszaállíthatja a módosításokat, vagy áttekintheti a módosításokat.

Amikor a frissítés befejeződik, Copilot megjeleníti a következő lépéseket a csevegési válaszban.

Telemetry

Az eszköz adatokat gyűjt a projekttípusokról, a frissítési szándékról és a frissítés időtartamáról. A fejlesztői környezet összegyűjti és összesíti az adatokat, és nem tartalmaz felhasználó által azonosítható információkat. További információ Microsoft adatvédelmi szabályzatáról: Visual Studio Customer Experience Improvement Program.