Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
GitHub Copilot agent de modernisation fournit des flux de travail de modernisation managés et de bout en bout appelés scenarios. Chaque scénario vous guide tout au long d’un type spécifique d’activité dans le travail de modernisation C++ pratique. Cette page documente les scénarios et compétences disponibles afin de comprendre ce que l’agent peut faire pour votre projet.
Scenarios
Un scénario est un workflow managé qui vous guide tout au long d’un type spécifique d’activité de modernisation.
Comment les scénarios sont découverts
Vous n’avez pas besoin de mémoriser les noms de scénarios. L’agent détecte votre type de projet et suggère automatiquement le scénario approprié.
Pour répertorier les scénarios pris en charge par l’agent, demandez « Quels scénarios sont disponibles pour mon projet ? » dans la fenêtre de conversation GitHub Copilot.
Scénarios disponibles
| Scénario | Type de projet | Description | Exemple d’invite |
|---|---|---|---|
| Mise à niveau des outils de génération MSVC (MSBuild) |
.sln, .vcxproj |
Met à niveau les projets MSBuild (.sln, .vcxproj) vers une version plus récente de MSVC Build Tools et résout les problèmes de build liés à la mise à niveau. |
« Mettre à niveau mes projets pour utiliser la dernière version installée des outils de génération MSVC » |
| Mise à niveau des outils de génération MSVC (CMake) | CMake | Résout les problèmes de build liés à la mise à niveau dans vos projets CMake après avoir configuré le projet avec une version plus récente de MSVC Build Tools. | « Résoudre les problèmes de build causés par la mise à niveau de mon projet pour utiliser les outils de build MSVC plus récents » |
Note
Si vous souhaitez proposer ou appeler d'autres scénarios de modernisation, visitez Developer Community.
Mise à niveau des outils de génération MSVC (MSBuild)
Ce scénario gère le workflow de mise à niveau complet pour les projets C++ basés sur MSBuild :
- Reciblage : met à jour les paramètres du projet pour cibler les derniers outils de génération MSVC et l’ensemble d’outils de plateforme MSVC.
- Analyse de la génération : génère la solution et catalogue toutes les erreurs et avertissements introduits par la mise à niveau.
- Mise à jour du code : remplace les API déconseillées, résout les problèmes de conformité et aide à résoudre les changements cassants.
- Validation : régénère pour confirmer que tous les problèmes sont résolus.
Par exemple, ce scénario résout des problèmes tels que :
- Fonctions CRT dépréciées, par exemple à
sprintfsprintf_s. - Modification de la conformité C++, par exemple, analyse de modèle plus stricte.
- Modifications de bibliothèque standard entre les versions MSVC, telles que les espaces de noms expérimentaux supprimés (par exemple
std::tr1). - Promotions d’avertissement en tant qu’erreur dans les ensembles d’outils plus récents.
- Erreurs de l’éditeur de liens pour les API supprimées du Kit de développement logiciel (SDK) Windows.
Mise à niveau des outils de génération MSVC (CMake)
Ce scénario gère les flux de travail de mise à niveau pour les projets CMake C++ :
- Analyse de build : génère le projet et catalogue toutes les erreurs et avertissements introduits par la mise à niveau.
- Mise à jour du code : remplace les API déconseillées, résout les problèmes de conformité et aide à résoudre les changements cassants.
- Validation : régénère pour confirmer que tous les problèmes sont résolus.
Par exemple, ce scénario résout des problèmes tels que :
- Fonctions CRT dépréciées, par exemple à
sprintfsprintf_s. - Modification de la conformité C++, par exemple, analyse de modèle plus stricte.
- Modifications de bibliothèque standard entre les versions MSVC, telles que les espaces de noms expérimentaux supprimés (par exemple
std::tr1). - Promotions d’avertissement en tant qu’erreur dans les ensembles d’outils plus récents.
- Erreurs de l’éditeur de liens pour les API supprimées du Kit de développement logiciel (SDK) Windows.
Persistance du scénario
Chaque scénario actif obtient son propre dossier à l’adresse .github/upgrades/{scenarioId}. Le dossier du scénario contient le plan, la progression des tâches, vos préférences et les journaux d’exécution. Le dossier fait partie de votre dépôt Git.
Compétences
Les compétences sont des fonctionnalités de modernisation plus petites et ciblées que l’agent utilise dans un scénario. Lorsque l’agent rencontre un modèle spécifique pendant une mise à niveau, il charge la compétence appropriée avec des instructions détaillées.
Les compétences se chargent automatiquement en fonction de ce que l’agent détecte dans votre codebase. Vous n’avez pas besoin de gérer le chargement de compétences.
Note
Il n’existe actuellement aucune compétence supplémentaire spécifique aux scénarios de modernisation C++.