Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Dieser Artikel hilft Ihnen, häufige Probleme zu beheben, wenn Sie GitHub Copilot Modernisierung verwenden, um Ihre C++-Projekte zu aktualisieren. Wenn ein Problem auftritt, das hier nicht behandelt wird, verwenden Sie Help>Send Feedback>Berichten eines Problems in Visual Studio.
Bevor du anfängst
Überprüfen Sie, ob Ihre Projektmappe bzw. Ihr Projekt kompiliert wird.
Bei MSVC-Aktualisierungsszenarien validiert der Agent Änderungen durch Erstellen Ihrer Lösung oder Ihres Projekts. Wenn Ihre Lösung oder Ihr Projekt bereits vor dem Start beschädigt ist, hat der Agent größere Schwierigkeiten, vorhandene Probleme von Problemen zu unterscheiden, die durch das Upgrade eingeführt wurden.
Wenn Sie bekannte Buildprobleme haben, dokumentieren Sie sie in benutzerdefinierten Anweisungen, geben Sie sie in Ihrer Antwort an, wenn der Agent während der Bewertungsphase nach Kontext fragt, oder fügen Sie sie hinzu scenario-instructions.md , damit der Agent sie ignoriert.
Ausführen eines Commits oder Aufhebens der nicht abgeschlossenen Arbeit
Beginnen Sie mit einem sauberen Arbeitsverzeichnis. Der Agent erstellt während der Arbeit Commits, und das Vermischen nicht festgeschriebener Änderungen mit den Änderungen des Agenten erschwert es, Änderungen zu prüfen oder rückgängig zu machen.
git stash
git status
Sichern von Nicht-Git-Repositorys
Der Agent kann auch mit Ordnern arbeiten, die nicht der Quellcodeverwaltung unterliegen. Wenn sich Ihr Projekt nicht in einem Git-Repository befindet, überspringt der Agent Branch- und Commit-Operationen. Sichern Sie ihren Projektordner, bevor Sie beginnen, damit Sie ihn bei Bedarf wiederherstellen können.
Tip
Erwägen Sie die Initialisierung eines lokalen Git-Repositorys, bevor Sie beginnen, auch wenn Sie keinen Push an eine Remote-App ausführen. Auf diese Weise können Sie einzelne Änderungen zurücksetzen und den Fortschritt schrittweise nachverfolgen.
Beispiel:
git init
git add
git commit -m "Initial Commit"
Wenn Sie und der Agent fertig sind, sollten Sie git nicht weiter verwenden, stellen Sie einfach sicher, dass der Code, der sich derzeit in Ihrer Arbeitsstruktur befindet, ihren Vorstellungen entspricht, und löschen Sie das .git Verzeichnis im Verzeichnis, in dem Sie ausgeführt haben git init.
Häufige Probleme
Agent wird in Copilot Chat nicht angezeigt
Symptoms: Die Eingabe von @Modernize im Chatfenster GitHub Copilot aktiviert den Agent nicht, oder Modernize wird nicht im Kontextmenü Projektmappen-Explorer angezeigt.
Lösungen:
- Stellen Sie sicher, dass Visual Studio Version 18.7 oder höher in Help>About Microsoft Visual Studio ist.
- Stellen Sie sicher, dass GitHub Copilot aktiv ist, indem Sie in der Statusleiste auf das symbol Copilot überprüfen.
- Überprüfen Sie, ob die Funktion unter Tools>Options>GitHub>Copilot>C/C++ aktiviert ist. Wählen Sie dann GitHub Copilot-Modernisierung für C++ aktivieren aus.
- Starten Sie Visual Studio neu, nachdem Sie die Einstellungen geändert haben.
Agent bleibt in einer Schleife hängen
Symptome: Der Agent versucht wiederholt den gleichen Fix, ohne Fortschritte zu machen.
Lösungen:
- Stoppen Sie den Agenten mit der Schaltfläche „Abbrechen“ im Promptfenster von Copilot Chat, beschreiben Sie im Prompt, was Sie beobachten, und senden Sie den Prompt, um den Agenten fortzusetzen.
- Stellen Sie einen manuellen Fix bereit, und teilen Sie dem Agent mit, was Sie geändert haben. Der Agent lernt von Ihrer Korrektur.
- Bitten Sie den Agenten, einen anderen Ansatz zu versuchen. Geben Sie beispielsweise im GitHub Copilot-Chatfenster Folgendes ein: "Diese Lösung funktioniert nicht. Versuchen Sie eine andere Strategie."
- Bei Bedarf können Sie die letzten Änderungen wiederherstellen oder rückgängigmachen, und starten Sie die Aufgabe neu.
Große Lösungen dauern zu lange
Symptome: Das Upgrade einer großen Lösung mit vielen Projekten dauert sehr lange oder scheint zu zögern.
Lösungen:
- Beginnen Sie mit einem repräsentativen Projekt als Pilotprojekt. Dies zeigt systemische Probleme frühzeitig an.
- Verfolgen Sie den Fortschritt, indem Sie
tasks.mdin.github/upgrades/{SCENARIO ID}überprüfen. - Wenn eine Sitzung abläuft, starten Sie eine neue Sitzung. Der Agent nimmt an der Stelle auf, an der er aufgehört hat.
Wiederherstellungsstrategien
Alle Änderungen rückgängigmachen
Wenn Sie einen Git Branch für das Upgrade verwendet haben, können Sie alles rückgängigmachen:
git checkout your-original-branch
git branch -D upgrade-branch
Ihr ursprünglicher Code bleibt unberührt.
Rückgängigmachen der letzten Änderung
Den neuesten Commit rückgängig machen:
git revert HEAD
Oder teilen Sie dem Agenten Folgendes mit, Revert the last change.
Ab einem bestimmten Schritt neu starten
Wenn der Plan des Agents nicht funktioniert, starten Sie von einer früheren Phase aus neu, indem Sie eine Entsprechende Eingabeaufforderung wie folgt senden:
Let's redo the plan. I want a different approach to the conformance issues.Go back to the assessment and reconsider the upgrade strategy.
Neu beginnen
Löschen Sie den .github/upgrades/{SCENARIO ID} Ordner, und beginnen Sie eine neue Unterhaltung mit dem Agent. Es beginnt von Grund auf neu.
Hilfe anfordern
Wenn Sie ein Problem nicht beheben können:
- Verwenden Sie Help>Send Feedback>Berichten Sie ein Problem in Visual Studio.
- Fügen Sie den Inhalt von
execution-log.mdaus.github/upgrades/{SCENARIO ID}falls möglich ein.