GitHub Copilot Modernisierung für C++: Häufig gestellte Fragen

Diese FAQ beantwortet häufige Fragen, die C++-Benutzer zur Modernisierung mit GitHub Copilot haben könnten.

Allgemeines

Was ist GitHub Copilot Modernisierung für C++?

GitHub Copilot Modernisierung für C++ ist ein GitHub Copilot Agent für Visual Studio, mit dem Sie C++-Projekte auf neuere Tools, Bibliotheken und Muster modernisieren und aktualisieren können. Es erkennt bestimmte Aufgaben wie das Upgrade von MSVC Build Tools auf neuere Versionen und stellt zusätzliche Tools und Anweisungen zum Ausführen dieser Aufgaben bereit. Es automatisiert Bewertungen, Planung und Ausführung, um die Modernisierungsaufgabe auszuführen, und Sie können sie in einem vollständig automatisierten Modus oder einem geführten Modus ausführen, mit dem Sie jeden Schritt genehmigen und zusätzliche Anleitungen bereitstellen können.

Welche Entwicklungsumgebungen werden unterstützt?

GitHub Copilot Modernisierung für C++ ist in Visual Studio 2026, Version 18.7 und höher, verfügbar.

Benötige ich ein GitHub Copilot-Abonnement?

Ja. Sie benötigen ein aktives GitHub Copilot-Abonnement, um den Modernisierungs-Agent zu verwenden.

Wird mein Code an externe Dienste gesendet?

GitHub Copilot verarbeitet Codeausschnitte gemäß GitHub Copilot Datenschutzrichtlinie. Code wird nicht über die aktuelle Sitzung hinaus beibehalten. Workflowdateien wie und scenario-instructions.mdtasks.md bleiben in Ihrem Repository und werden nicht an externe Dienste übertragen.

MSVC-Upgradeszenarien

Welche Projekttypen werden unterstützt?

Der Agent unterstützt diese Projekttypen:

  • MSBuild-basierte Projekte (.sln und .vcxproj).
  • CMake-basierte Projekte.

Der Agent unterstützt derzeit keine Unreal Engine-Projekte (.uproject).

Was ändert der Agent tatsächlich an meinem Code?

Der Agent ändert den Quellcode, um Buildfehler und Warnungen zu beheben, die durch ein Upgrade auf eine neuere Version von MSVC Build Tools eingeführt wurden. Häufige Änderungen umfassen das Ersetzen veralteter APIs, das Beheben von Problemen, die durch die Verwendung eines konformeren Compilers verursacht werden, das Aktualisieren von Direktiven für entfernte oder verschobene Header sowie das Beheben von Linkerfehlern, die durch Bibliotheksänderungen verursacht werden. Wenn sich Ihr Projekt in einem Git-Repository befindet, werden alle Änderungen übernommen, damit Sie einzelne Änderungen überprüfen und wiederherstellen können.

Kann ich steuern, was der Agent ändert?

Ja. Sie können den Plan überprüfen und genehmigen, bevor die Ausführung beginnt, den Agenten anweisen, bestimmte Probleme oder Aufgaben zu überspringen, und Präferenzen in scenario-instructions.md angeben. Sie können die Ausführung auch anhalten, den Agenten umleiten oder jeden vom Agenten erstellten Commit rückgängig machen.

Führt der Agent Tests aus?

Der Agent überprüft Änderungen, indem das Projekt nach jedem Vorgang erstellt wird. Wenn Ihr Projekt Tests als Teil des Builds ausführt, werden diese Tests ebenfalls ausgeführt. Sie können dem Agent auch mitteilen, dass die Testüberprüfung für bestimmte Aufgaben übersprungen wird.

Was geschieht, wenn der Agent einen Fehler macht?

Stoppen Sie den Agenten, und teilen Sie es sofort mit. Es passt sich an und wendet Korrekturen an, wenn Sie den Agenten anweisen, fortzufahren. Sie können auch ausführen git revert HEAD, den Agent bitten, einen anderen Ansatz zu versuchen oder einen manuellen Fix vorzunehmen.

Weitere Informationen finden Sie unter Troubleshoot GitHub Copilot Modernisierung für C++.

Kann ich nur einen Teil meiner Lösung aktualisieren?

Ja. Teilen Sie dem Agenten mit, welche Projekte aktualisiert werden sollen, zum Beispiel Upgrade only the CoreLib project to the latest MSVC Build Tools.. Der Agent beschränkt seine Arbeit auf die Projekte, die Sie angeben.

Status und Sitzungen

Wo speichert der Agent seinen Status?

Der gesamte Zustand befindet sich in .github/upgrades/{SCENARIO ID}Ihrem Repository. Dazu gehören die Bewertung, der Plan, der Aufgabenfortschritt, Ihre Einstellungen und die Ausführungsprotokolle.

Kann ich ein unterbrochenes Upgrade fortsetzen?

Ja. Sie können Visual Studio schließen oder die Chatsitzung jederzeit beenden. Wenn Sie eine neue Unterhaltung beginnen, erkennt der Agent den bestehenden Zustand und setzt dort fort, wo er aufgehört hat.

Soll ich den .github/upgrades Ordner übernehmen?

Ja. Wenn Sie den Ordner in Ihren Branch committen, wird der Upgrade-Fortschritt gesichert, Teammitglieder können den Upgrade-Status einsehen, und der Agent kann vom richtigen Status aus fortfahren. Sie können den Ordner nach Abschluss des Upgrades entfernen.

Können mehrere Personen an demselben Upgrade arbeiten?

Die Zustandsdateien in .github/upgrades können über Git gemeinsam genutzt werden. Allerdings sollte jeweils nur eine Person aktiv mit dem Agenten interagieren, um widersprüchliche Änderungen zu vermeiden.

Compatibility

Von welchen MSVC Build Tools-Versionen kann ich ein Upgrade durchführen?

Der Agent unterstützt das Upgrade von einer früheren Version der MSVC Build Tools auf die neueste Version, die von Ihrer Visual Studio Installation unterstützt wird.

Behandelt der Agent die Kompatibilität von Bibliotheken von Drittanbietern?

Der Agent identifiziert Kompatibilitätsprobleme der Drittanbieterbibliothek während der Bewertung. Es schlägt Alternativen oder Problemumgehungen vor, wenn sie verfügbar sind. Wenn eine Bibliothek nicht mit dem Zieltoolset kompatibel ist, dokumentiert der Agent das Problem, damit Sie entscheiden können, wie dies fortgesetzt werden soll.

Kann ich den Agent mit vorkompilierten Headern verwenden?

Ja. Der Agent versteht die Konfigurationen für präkompilierte Header und berücksichtigt sie beim Upgrade.