升级仪表板提供GitHub Copilot升级会话的可视视图。 用户界面标记面板 代码升级。 使用仪表板可以:
- 实时跟踪任务进度和失败。
- 查看评估结果和强制性问题。
- 检查 NuGet 包兼容性。
- 检查升级策略和设置。
- 将评估发布为团队评审的私人GitHub gist。
在桌面版 GitHub Copilot 应用中,仪表板将作为侧面板打开。 在其他环境(如 GitHub Copilot CLI 或 IDE)中,它会在浏览器中打开。
打开仪表板
启动升级会话时,Copilot可能会自动打开仪表板。 如果仪表板未打开,请要求Copilot在初始提示中或在活动升级会话期间显示它。
示例提示:
- “显示升级仪表板。”
- “将我的解决方案升级到 .NET 10 并显示仪表板。
仪表板将在侧面板或浏览器中打开,具体取决于使用的客户端GitHub Copilot。
浏览仪表板
使用顶部导航栏中的八个选项卡检查升级的不同部分。 标题在每个选项卡上显示总体任务进度。
| 选项卡 | Purpose |
|---|---|
| 概述 | 汇总升级会话。 |
| 情形 | 显示活动方案及其阶段。 |
| 任务 | 跟踪升级计划和单个任务。 |
| 项目 | 列出项目、目标框架和评估事件。 |
| 依赖项 | 报告包和引用兼容性。 |
| 评估 | 显示基本代码评估结果。 |
| 选项 | 显示当前的升级策略和设置。 |
| 活动 | 记录文件更改、提交和生成事件。 |
“概述”选项卡
默认情况下会打开“ 概述 ”选项卡,并汇总升级会话。 方案卡显示:
- 方案名称,例如
dotnet-version-upgrade。 - 当前和目标目标框架名字对象(例如
net472和net10.0)。 - 总体进度。
- 已完成和活动阶段。
“ 概览 ”部分显示以下统计信息:
- 任务完成:已完成的任务、总任务和正在进行的任务。
- 评估的项目:存储库中发现的项目文件数。
- 评估事件:所有项目中的单个规则冲突。
- 强制规则:代理必须解决的问题,然后才能完成升级。
- NuGet 包:代理针对目标框架分析的解决方案中的不同包。
- 不兼容的包:不支持目标框架的包。
“方案”选项卡
“ 方案 ”选项卡列出了活动方案和可用于存储库的所有方案。 使用 “活动 ”和 “所有方案 ”子表在这些视图之间切换。
“活动”子表显示方案 ID,例如DOTNET-VERSION-UPGRADE,和 TFM 转换,例如net472到net10.0。 它还介绍了方案的用途和方法。
阶段管道显示每个升级阶段的状态。 复选标记标识已完成的阶段,点标识当前阶段。
“任务”选项卡
“ 任务 ”选项卡显示当前方案中的升级计划和每个任务。 摘要磁贴报告总计、完成、正在进行和失败的任务计数。 进度栏报告完成百分比并标识方案。
“ 概述 ”部分介绍升级策略,包括项目顺序和顺序。 在概述下方,带编号的分层列表使用图标和文本样式来标识任务状态:
- 复选标记:完成。 仪表板会交叉任务标签。
- 微调器:正在进行中。 仪表板以粗体显示任务标签。
- 正方形:挂起。
“项目”选项卡
“ 项目 ”选项卡列出 .csproj 存储库中的每个文件和 .fsproj 文件及其评估数据。 摘要磁贴报告项目总数、升级后的 TPM 和评估事件。
事件表示触发评估规则的一个代码位置。 选择事件计数以检查该项目的问题。
使用 表 或 图形 更改视图。 该表包含以下列:
- Project:project名称和文件路径。
- 框架:当前目标框架。
-
类型:项目类型,如
ClassicWinForms或ClassicClassLibrary。 - 事件:事件计数。
该图将项目显示为节点,项目引用作为连接。
依赖项选项卡
“ 依赖项 ”选项卡报告解决方案的 NuGet 包和引用是否支持目标框架。 依赖项分析目标卡标识目标 TFM 和已分析项目数。
摘要磁贴报告这些依赖项类型和条件:
- NuGet 包:解决方案中的不同 NuGet 包。
- 版本偏移:跨项目使用不同版本的包。
- 程序集引用:直接引用,如全局程序集缓存(GAC)程序集或单独的 DLL 文件。
-
Project引用:
<ProjectReference>项目之间的关系。 -
框架引用:
<FrameworkReference>SDK 样式项目中的条目,例如Microsoft.AspNetCore.App。
兼容性栏将包分组为“有效”、“部分”、“不兼容”或“未知”。 仪表板在条形图下方显示源 dependencies-health.json 路径。
包表列出了包名称、项目、已安装的版本、建议的版本和兼容性。 对于不兼容的包,请选择 “说明 ”以询问代理聊天中的详细信息。
“评估”选项卡
“ 评估 ”选项卡报告与目标框架的代码库兼容性。 摘要磁贴显示项目、问题、事件、强制问题和工作量总计。 类别磁贴标识三个最大的事件组。
两个条形图分组事件:
- 按严重性:将事件分组为必需事件、可选事件、潜在事件或信息性事件。
- 按类别:按 API、NuGet 和项目配置等区域对事件进行分组。
使用“摘要”、“问题和功能”子表更改详细信息级别。 摘要 提供有关项目、包和 API 兼容性的叙述性报告。 问题和功能提供各个细分。
若要查看评估日期和时间,请选择 “信息” 图标。 若要将评估发布为专用GitHub gist,请选择“共享”图标。
“选项”选项卡
“ 选项 ”选项卡显示当前升级配置。 大多数设置都是只读的,但选项卡提供用于更改流模式的控件。 若要更改其他受支持的首选项,请在聊天中询问代理。
选项卡包含三个部分:
- 策略显示所选策略,例如 Bottom-Up(Dependency-First)。 它还解释了代理为何为解决方案选择了该策略。
- 执行约束 列出了层顺序、层之间的验证和其他执行要求等规则。
- 首选项 列出了目标框架、流模式、提交策略和进度。
对于 流模式,请选择“ 切换到引导式 ”或 “切换到自动”。 仪表板将请求发送到代理。
目标框架可能包含平台后缀。 例如,WPF应用程序可能面向net10.0-windows而不是 net10.0。
“活动”选项卡
“活动”选项卡提供代理操作的时间戳日志。 在活动会话期间,日志会实时更新,并将新事件置于顶部。 该面板还显示源 activity.jsonl 路径。
使用 日志、 提交和 按文件 子表查看活动。 每个日志条目包括:
- 时间戳:事件发生的日期和时间。
- 事件类型:操作,例如文件更改、提交或已完成生成会话。
- 详细信息:关联的文件路径或提交消息。
- 行差异:文件事件中添加或删除的行数。
局限性
- 仅通过桌面版或 GitHub Copilot CLI GitHub Copilot 应用访问仪表板。
- 通过“ 选项 ”选项卡上的代理聊天或控件更改支持的首选项。仪表板不提供对其他会话设置的直接访问权限。
- 在预期仪表板显示数据之前,请启动升级会话。 没有升级项目的存储库会显示空状态。
- 使代理保持活动状态,以便在 “活动 ”选项卡上进行实时更新。已完成或已停止的会话仅显示历史事件。