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.
GitHub Copilot agente de modernização fornece fluxos de trabalho de modernização geridos e de ponta a ponta chamados
Scenarios
Um cenário é um fluxo de trabalho gerido que o guia através de um tipo específico de atividade de modernização.
Como os cenários são descobertos
Não precisas de memorizar nomes de cenários. O agente deteta o tipo de projeto e sugere automaticamente o cenário relevante.
Para listar os cenários que o agente suporta, pergunte "Que cenários estão disponíveis para o meu projeto?" na janela de chat GitHub Copilot.
Cenários disponíveis
| Scenario | Tipo de Projeto | Description | Exemplo de prompt |
|---|---|---|---|
| Atualização do MSVC Build Tools (MSBuild) |
.sln, .vcxproj |
Atualiza projetos baseados no MSBuild (.sln, .vcxproj) para uma versão mais recente do MSVC Build Tools e resolve problemas de compilação relacionados com atualizações. |
"Atualizar os meus projetos para usar a versão mais recente e instalada das Ferramentas de Build MSVC" |
| Atualização do MSVC Build Tools (CMake) | CMake | Resolve problemas de compilação relacionados com atualizações nos seus projetos baseados em CMake após configurar o projeto com uma versão mais recente das Ferramentas de Construção MSVC. | "Resolver quaisquer problemas de compilação causados pela atualização do meu projeto para usar as mais recentes Ferramentas de Compilação MSVC" |
Observação
Se quiser propor ou votar noutros cenários de modernização, visite Developer Community.
Atualização do MSVC Build Tools (MSBuild)
Este cenário trata do fluxo de trabalho completo de atualização para projetos C++ baseados no MSBuild:
- Retargeting: Atualiza as definições do projeto para direcionar as ferramentas MSVC Build e Platform Toolset mais recentes e instaladas.
- Análise de builds: Constrói a solução e cataloga todos os erros e avisos introduzidos pela atualização.
- Atualização de código: Substitui APIs obsoletas, resolve questões de conformidade e ajuda a evitar alterações pré-ajustadas.
- Validação: Reconstruções para confirmar que todos os problemas estão resolvidos.
Por exemplo, este cenário aborda questões como:
- Funções CRT obsoletas, por exemplo,
sprintfparasprintf_s. - A conformidade C++ altera, por exemplo, uma análise sintática de templates mais rigorosa.
- Alterações padrão de bibliotecas entre versões MSVC, como espaços de nomes experimentais removidos (por exemplo,
std::tr1). - Promoções de aviso como erro em conjuntos de ferramentas mais recentes.
- Erros de ligação para APIs removidos do SDK do Windows.
Atualização do MSVC Build Tools (CMake)
Este cenário lida com fluxos de trabalho de atualização para projetos C++ baseados em CMake:
- Análise de build: Constrói o projeto e cataloga todos os erros e avisos introduzidos pela atualização.
- Atualização de código: Substitui APIs obsoletas, resolve questões de conformidade e ajuda a evitar alterações pré-ajustadas.
- Validação: Reconstruções para confirmar que todos os problemas estão resolvidos.
Por exemplo, este cenário aborda questões como:
- Funções CRT obsoletas, por exemplo,
sprintfparasprintf_s. - A conformidade C++ altera, por exemplo, uma análise sintática de templates mais rigorosa.
- Alterações padrão de bibliotecas entre versões MSVC, como espaços de nomes experimentais removidos (por exemplo,
std::tr1). - Promoções de aviso como erro em conjuntos de ferramentas mais recentes.
- Erros de ligação para APIs removidos do SDK do Windows.
Persistência de cenários
Cada cenário ativo tem a sua própria pasta em .github/upgrades/{scenarioId}. A pasta de cenários contém o plano, progresso da tarefa, as suas preferências e registos de execução. A pasta passa a fazer parte do teu repositório Git.
Competências
As competências são capacidades de modernização menores e direcionadas que o agente utiliza num cenário. Quando o agente encontra um padrão específico durante uma atualização, carrega a habilidade relevante com instruções detalhadas.
Competências carregam automaticamente com base no que o agente deteta na tua base de código. Não precisas de gerir a carga de competências.
Observação
Atualmente, não existem competências adicionais específicas para cenários de modernização em C++.