Naslaginformatie over scenario's en vaardigheden

GitHub Copilot moderniseringsagent biedt beheerde end-to-end moderniseringswerkstromen met de naam scenario's. Elk scenario begeleidt u door een specifiek type activiteit in praktische C++-moderniseringswerkzaamheden. Op deze pagina worden de beschikbare scenario's en vaardigheden beschreven, zodat u begrijpt wat de agent voor uw project kan doen.

Scenarios

Een scenario is een beheerde werkstroom die u begeleidt bij een specifiek type moderniseringsactiviteit.

Hoe scenario's worden gedetecteerd

U hoeft geen scenarionamen te onthouden. De agent detecteert uw projecttype en stelt automatisch het relevante scenario voor.

Als u de scenario's wilt vermelden die de agent ondersteunt, vraagt u "Welke scenario's zijn beschikbaar voor mijn project?" in het chatvenster van GitHub Copilot.

Beschikbare scenario's

Scenario Projecttype Description Voorbeeldprompt
MSVC Build Tools upgrade (MSBuild) .sln, .vcxproj Hiermee worden op MSBuild gebaseerde projecten (.sln, .vcxproj) bijgewerkt naar een nieuwere versie van MSVC Build Tools en worden upgradeproblemen opgelost. "Upgrade mijn projecten om de nieuwste, geïnstalleerde versie van de MSVC Build Tools te gebruiken"
Upgrade van MSVC Build Tools (CMake) CMake Lost upgradegerelateerde buildproblemen op in uw op CMake gebaseerde projecten nadat u het project hebt geconfigureerd met een nieuwere versie van MSVC Build Tools. "Los eventuele buildproblemen op die worden veroorzaakt door het upgraden van mijn project om de nieuwere MSVC Build Tools te gebruiken"

Note

Als u andere moderniseringsscenario's wilt voorstellen of upvote, gaat u naar Developer Community.

MSVC Build Tools upgrade (MSBuild)

In dit scenario wordt de volledige upgradewerkstroom voor op MSBuild gebaseerde C++-projecten verwerkt:

  1. Retargeting: hiermee worden projectinstellingen bijgewerkt om de meest recente, geïnstalleerde MSVC Build Tools en Platform Toolset te gebruiken.
  2. Build-analyse: bouwt de oplossing en catalogi alle fouten en waarschuwingen die door de upgrade zijn geïntroduceerd.
  3. Code bijwerken: vervangt afgeschafte API's, lost nalevingsproblemen op en helpt bij het verbreken van wijzigingen.
  4. Validatie: Herbouwen om te bevestigen dat alle problemen zijn opgelost.

In dit scenario worden bijvoorbeeld problemen opgelost, zoals:

  • Afgeschafte CRT-functies, bijvoorbeeldsprintf.sprintf_s
  • Wijzigingen in de naleving van C++ bijvoorbeeld strengere sjabloonparsering.
  • Standaardbibliotheekwijzigingen tussen MSVC-versies, zoals verwijderd, experimentele naamruimten (bijvoorbeeld std::tr1).
  • Waarschuwingen als foutpromoties in nieuwere toolsets.
  • Linkerfouten voor API's die zijn verwijderd uit de Windows SDK.

Upgrade van MSVC Build Tools (CMake)

In dit scenario worden upgradewerkstromen voor CMake-projecten verwerkt:

  1. Build-analyse: bouwt het project en catalogi alle fouten en waarschuwingen die door de upgrade zijn geïntroduceerd.
  2. Code bijwerken: vervangt afgeschafte API's, lost nalevingsproblemen op en helpt bij het verbreken van wijzigingen.
  3. Validatie: Herbouwen om te bevestigen dat alle problemen zijn opgelost.

In dit scenario worden bijvoorbeeld problemen opgelost, zoals:

  • Afgeschafte CRT-functies, bijvoorbeeldsprintf.sprintf_s
  • Wijzigingen in de naleving van C++ bijvoorbeeld strengere sjabloonparsering.
  • Standaardbibliotheekwijzigingen tussen MSVC-versies, zoals verwijderd, experimentele naamruimten (bijvoorbeeld std::tr1).
  • Waarschuwingen als foutpromoties in nieuwere toolsets.
  • Linkerfouten voor API's die zijn verwijderd uit de Windows SDK.

Scenariopersistentie

Elk actief scenario krijgt een eigen map op .github/upgrades/{scenarioId}. De scenariomap bevat de planning, taakvoortgang, uw voorkeuren en uitvoeringslogboeken. De map wordt onderdeel van uw Git-opslagplaats.

Skills

Vaardigheden zijn kleinere, gerichte moderniseringsmogelijkheden die de agent binnen een scenario gebruikt. Wanneer de agent een specifiek patroon tegenkomt tijdens een upgrade, wordt de relevante vaardigheid geladen met gedetailleerde instructies.

Vaardigheden worden automatisch geladen op basis van wat de agent detecteert in uw codebasis. U hoeft het laden van vaardigheden niet te beheren.

Note

Er zijn momenteel geen aanvullende vaardigheden die specifiek zijn voor C++-moderniseringsscenario's.