GitHub Copilot现代化代理提供称为 scenarios 的端到端现代化工作流。 每个方案都指导你完成实际 C++ 现代化工作中特定类型的活动。 本页介绍可用的方案和技能,以便了解代理可以为项目执行的操作。
Scenarios
方案是一种托管工作流,指导你完成特定类型的现代化活动。
如何发现场景
无需记住情境名称。 代理会检测项目类型,并自动建议相关方案。
若要列出代理支持的方案,请在GitHub Copilot聊天窗口中询问“我的项目可以使用哪些方案?”。
可用方案
| Scenario | 项目类型 | 说明 | 示例提示 |
|---|---|---|---|
| MSVC 生成工具升级 (MSBuild) |
.sln、.vcxproj |
将基于 MSBuild 的项目 (.sln, .vcxproj) 升级到较新版本的 MSVC 生成工具,并解决与升级相关的生成问题。 |
“升级我的项目以使用 MSVC 生成工具的最新已安装版本” |
| MSVC 生成工具升级 (CMake) | CMake | 使用较新版本的 MSVC 生成工具配置项目后,解决基于 CMake 的项目中的升级相关的生成问题。 | “解决升级项目以使用较新的 MSVC 生成工具而导致的任何生成问题” |
Note
若要提出或提出其他现代化方案,请访问 开发者社区。
MSVC 生成工具升级 (MSBuild)
此方案处理基于 MSBuild 的 C++ 项目的完整升级工作流:
- 重定目标:更新项目设置以面向最新安装的 MSVC 生成工具和平台工具集。
- 生成分析:生成解决方案并编录升级引入的所有错误和警告。
- 更新代码:替换已弃用的 API,解决一致性问题,并帮助进行重大更改。
- 验证:重新生成以确认已解决所有问题。
例如,此方案解决了以下问题:
- 例如
sprintf,弃用的 CRT 函数。sprintf_s - C++ 一致性更改,例如更严格的模板分析。
- MSVC 版本之间的标准库更改,例如已删除的实验命名空间(例如
std::tr1)。 - 较新的工具集中的警告即错误升级。
- 从 Windows SDK 中删除的 API 的链接器错误。
MSVC 生成工具升级 (CMake)
此方案处理基于 CMake 的 C++ 项目的升级工作流:
- 生成分析:生成项目并编录升级引入的所有错误和警告。
- 更新代码:替换已弃用的 API,解决一致性问题,并帮助进行重大更改。
- 验证:重新生成以确认已解决所有问题。
例如,此方案解决了以下问题:
- 例如
sprintf,弃用的 CRT 函数。sprintf_s - C++ 一致性更改,例如更严格的模板分析。
- MSVC 版本之间的标准库更改,例如已删除的实验命名空间(例如
std::tr1)。 - 较新的工具集中的警告即错误升级。
- 从 Windows SDK 中删除的 API 的链接器错误。
方案持久性
每个活动方案都会分配一个自己的文件夹.github/upgrades/{scenarioId}。 方案文件夹包含计划、任务进度、首选项和执行日志。 该文件夹将成为 Git 存储库的一部分。
技能
技能 较小,面向代理在方案中使用的现代化功能。 当代理在升级过程中遇到特定模式时,它会使用详细说明加载相关技能。
技能将根据代理在代码库中检测到的内容自动加载。 无需管理技能加载。
Note
目前没有特定于 C++ 现代化方案的其他技能。
相关内容
- 适用于 C++ 的 GitHub Copilot 现代化概述
C++