Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Esta FAQ responde a perguntas comuns que os utilizadores de C++ possam ter sobre a modernização do GitHub Copilot.
Geral
O que é a modernização do GitHub Copilot para C++?
A modernização para C++ com o GitHub Copilot é um agente do GitHub Copilot para o Visual Studio que ajuda a modernizar e atualizar projetos C++ para ferramentas, bibliotecas e padrões mais recentes. Reconhece tarefas específicas, como atualizar as Ferramentas de Build MSVC para versões mais recentes, e fornece ferramentas e instruções adicionais para realizar essas tarefas. Automatiza a avaliação, planeamento e execução para realizar a tarefa de modernização, e pode executá-lo num modo totalmente automatizado ou guiado que lhe permite aprovar cada passo e fornecer orientação adicional.
Que ambientes de desenvolvimento são suportados?
A modernização do GitHub Copilot para C++ está disponível no Visual Studio 2026 versão 18.7 e posteriores.
Preciso de uma subscrição do GitHub Copilot?
Yes. Precisas de uma subscrição ativa do GitHub Copilot para usar o agente de modernização.
O meu código é enviado para serviços externos?
GitHub Copilot processa excertos de código de acordo com a política de privacidade Copilot GitHub. O código não é mantido para além da sessão imediata. Ficheiros de workflow como scenario-instructions.md e tasks.md permanecem no seu repositório e não são transmitidos para serviços externos.
Cenários de atualização MSVC
Que tipos de projetos são suportados?
O agente apoia estes tipos de projetos:
- Projetos baseados em MSBuild (
.slne.vcxproj). - Projetos baseados em CMake.
O agente não suporta atualmente projetos Unreal Engine (.uproject).
O que é que o agente realmente altera no meu código?
O agente modifica o código-fonte para resolver erros de compilação e avisos introduzidos ao atualizar para uma versão mais recente do MSVC Build Tools. As alterações comuns incluem substituir APIs obsoletas, corrigir problemas causados pelo uso de um compilador mais conforme, atualizar diretivas include para cabeçalhos removidos ou realocados, e resolver erros de linker causados por alterações na biblioteca. Quando o seu projeto está num repositório git, todas as alterações são confirmadas para que possa rever e reverter modificações individuais.
Posso controlar o que o agente altera?
Yes. Pode rever e aprovar o plano antes do início da execução, dizer ao agente para ignorar problemas ou tarefas específicas e fornecer preferências em scenario-instructions.md. Também podes pausar a execução, redirecionar o agente ou reverter qualquer commit que ele faça.
O agente faz testes?
O agente valida as alterações construindo o projeto após cada tarefa. Se o teu projeto executa testes como parte da build, esses testes também são executados. Também podes pedir ao agente para saltar a validação de testes para tarefas específicas.
E se o agente cometer um erro?
Pára o agente e conta logo a situação. Vai adaptar-se e aplicar correções quando disseres ao agente para retomar. Também pode executar git revert HEAD, pedir ao agente para tentar uma abordagem diferente ou fazer uma correção manual.
Para mais informações, consulte Resolução de problemas da modernização do GitHub Copilot para C++.
Posso atualizar apenas parte da minha solução?
Yes. Diga ao agente que projetos atualizar, por exemplo, Upgrade only the CoreLib project to the latest MSVC Build Tools. O agente limita o âmbito do seu trabalho aos projetos que especificar.
Estado e sessões
Onde é que o agente armazena o seu estado?
Todo o estado está em .github/upgrades/{SCENARIO ID} no seu repositório. Isto inclui a avaliação, o plano, o progresso da tarefa, as suas preferências e registos de execução.
Posso retomar uma atualização interrompida?
Yes. Pode fechar o Visual Studio ou terminar a sessão de chat a qualquer momento. Quando inicias uma nova conversa, o agente deteta o estado existente e retoma de onde ficou.
Devo fazer commit da pasta .github/upgrades?
Yes. Comprometer a pasta no seu ramo garante o progresso da atualização, permite aos membros da equipa ver o estado da atualização e ajuda o agente a retomar a partir do estado correto. Podes remover a pasta depois de a atualização estar concluída.
Podem várias pessoas trabalhar na mesma atualização?
Os ficheiros de estado em .github/upgrades podem ser partilhados através do Git. No entanto, apenas uma pessoa deve interagir ativamente com o agente de cada vez para evitar alterações conflitantes.
Compatibility
A partir de que versões do MSVC Build Tools posso atualizar?
O agente suporta a atualização de qualquer versão anterior do MSVC Build Tools para a versão mais recente suportada pela sua instalação do Visual Studio.
O agente gere a compatibilidade com bibliotecas de terceiros?
O agente identifica problemas de compatibilidade com bibliotecas de terceiros durante a avaliação. Sugere alternativas ou soluções quando disponíveis. Se uma biblioteca não for compatível com o conjunto de ferramentas alvo, o agente documenta o problema para que possas decidir como proceder.
Posso usar o agente com cabeçalhos pré-compilados?
Yes. O agente compreende as configurações de cabeçalhos pré-compiladas e contabiliza-as durante o processo de atualização.