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 modernisation est un agent GitHub Copilot qui vous aide à mettre à niveau et moderniser vos projets C++. Il vous guide tout au long de l’évaluation, des recommandations de solution, des correctifs de code et de la validation dans Visual Studio.
Scenarios
L’agent fournit des flux de travail de modernisation de bout en bout appelés scénarios. Chaque scénario vous guide tout au long d’un type spécifique de tâche de modernisation.
| Scénario | Description | Exemple d’invite |
|---|---|---|
| Mise à niveau des outils de génération MSVC (MSBuild) | 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) | 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 d'autres scénarios de modernisation ou voter pour ceux existants, rendez-vous sur Developer Community.
Pour obtenir une référence complète de tous les scénarios, consultez Les scénarios et les informations de référence sur les compétences.
Prerequisites
Avant de commencer, vérifiez que vous disposez des éléments suivants :
- Visual Studio 2026 version 18.7 ou ultérieure.
- Un abonnement GitHub Copilot.
- Une base de code basée sur MSBuild (
.sln,.vcxproj) ou une base de code basée sur CMake.
Pour connaître les étapes détaillées de configuration, consultez Installer GitHub Copilot Modernization for C++.
Fonctionnement
Pour démarrer le flux de travail de modernisation :
- Ouvrez votre projet ou solution C++ dans Visual Studio.
- Démarrez l’agent : dans Explorateur de solutions, cliquez avec le bouton droit sur votre solution ou projet, puis sélectionnez Modernize. Ou, dans GitHub Copilot Chat, tapez
@Modernize. - Indiquez à l’agent ce qu’il faut mettre à niveau.
Si votre installation de Visual Studio manque les outils de génération MSVC que votre projet utilise actuellement, l’Assistant Configuration doit apparaître lorsque vous chargez votre projet. Vous pouvez utiliser l’Assistant Installation pour installer la version MSVC manquante ou pour recibler vers la version MSVC installée. Si vous redéfinissez la cible d’un projet, un message s’affiche dans la barre d’informations et peut vous ouvrir directement le flux de travail de l’agent Modernize.
Lorsque vous demandez à l’agent de mettre à niveau votre projet, il vous invite à créer une branche si vous êtes dans un dépôt Git. Ensuite, il exécute un flux de travail en trois étapes. Chaque étape produit des fichiers Markdown sous .github/upgrades/{scenarioId} votre référentiel afin de pouvoir passer en revue ce qui se passe ensuite avant de continuer. Si .github/upgrades/{scenarioId} existe déjà lors d’une tentative précédente, l’agent vous demande si vous souhaitez continuer ou recommencer.
Étape 1 : Évaluation
L’agent examine la structure, les dépendances et les modèles de code de votre projet et enregistre une évaluation complète dans assessment.md. L’agent présente également des décisions de stratégie pour votre révision, telles que la stratégie de mise à niveau et la gestion de compatibilité.
Étape 2 : Planification
L’agent convertit l’évaluation en spécification détaillée. Le plan.md fichier documente les stratégies de mise à niveau, les approches de refactorisation et les atténuations des risques.
Étape 3 : Exécution
L’agent décompose le plan en tâches séquentielles avec des critères de validation dans tasks.md. Chaque tâche décrit une modification unique et la façon dont l’agent confirme qu’il a réussi.
Modes de flux
L’agent prend en charge deux modes de flux :
- Automatique : fonctionne à travers toutes les étapes sans interrompre, s’arrêter uniquement aux bloqueurs authentiques. Ce mode est idéal pour les mises à niveau simples.
- Guidé: S'interrompt à chaque transition entre les étapes pour votre vérification. Ce mode est idéal pour les mises à niveau plus volumineuses ou plus complexes.
Vous pouvez changer de mode à tout moment en scenario-instructions.md modifiant ou en demandant à l’agent de changer de mode. Si vous exécutez en mode Automatic, vous devrez peut-être arrêter l’agent avec le bouton Annuler dans la fenêtre d’invite de Copilot Chat et demander à l’agent de reprendre en mode Guided.
Gestion de l'état
L’agent stocke tous les états dans .github/upgrades/{scenarioId}.
| Fichier | Purpose |
|---|---|
assessment.md |
Analyse de votre solution. |
plan.md |
Plan de tâche ordonné. |
tasks.md |
Tableau de bord de progression dynamique. |
scenario-instructions.md |
Mémoire persistante de l’agent. |
execution-log.md |
Journal d’audit de toutes les modifications. |
Vous pouvez fermer Visual Studio et reprendre ultérieurement. L’agent reprend là où il s’était arrêté en lisant les fichiers d’état.
Tip
Si vous souhaitez travailler sur votre mise à niveau sur une plus longue période tout en poursuivant d’autres travaux, envisagez d’enregistrer le dossier .github/upgrades dans votre branche sous forme de commits distincts. L’état validé sert de sauvegarde et permet aux membres de l’équipe d’afficher la progression de la mise à niveau. Les validations distinctes vous permettent de les supprimer facilement de votre historique git local avant de fusionner votre branche si vous ne souhaitez pas qu’elles soient validées définitivement dans votre dépôt.
Fournir des commentaires
Microsoft valorise vos commentaires et les utilise afin d'améliorer l’agent. Laissez vos commentaires à l’aide de l’une des options suivantes :
Dans Visual Studio, utilisez les options Suggester une fonctionnalité et Signaler un problème.
Déposez un problème sur Developer Community.