Skip to main content

使用 Copilot 帮助处理拉取请求

可以使用 Copilot Workspace 来循环访问、验证和集成对代码的建议更改。

Note

Copilot Workspace 目前处于公共预览版,可能会更改。

关于使用 Copilot 帮助处理拉取请求

创建拉取请求后,可以在 GitHub 网站上继续处理该 PR。 本文介绍 Copilot Workspace,它提供了一种支持 Copilot 的环境,用于:

  • 优化拉取请求****
  • 验证更改****
  • 集成来自审阅者的建议****

Copilot Workspace 使你能够在一个位置(GitHub 上)对拉取请求进行从创建到合并的处理。

Copilot 还可以通过其他方式帮助处理拉取请求。 这些内容将在单独的文章中进行说明。 Copilot 可以:

Copilot Workspace 的好处

Copilot Workspace:

  • 使你能够处理拉取请求,而无需在 GitHub 网站和 IDE 之间来回切换。
  • 使你能够通过 Copilot 代码评审和 Copilot Autofix 以及人工审阅者的评审轻松查看/测试/修改/应用编码建议。
  • 在 GitHub 上提供 Copilot 代码完成建议。 以前,这些功能仅在 IDE 中提供。
  • 在基于浏览器的编辑器中显示拉取请求更改的文件列表,还允许你跨存储库查找和编辑任何文件。
  • 使你能够直接从 GitHub 上的 Workspace 环境生成、测试和运行代码。

先决条件

要使用 Copilot Workspace,需要:

你仍可在不访问 Copilot Workspace 的情况下编辑拉取请求中的文件,方法是转到“文件已更改”选项卡,单击要编辑的文件旁边的省略号 (...),然后单击“编辑文件”************。

在拉取请求中编辑文件

要在 Copilot Workspace 中处理拉取请求,请执行以下操作:

  1. 单击拉取请求主页右侧的“在 Workspace 中打开”按钮****。

    这会打开 Copilot Workspace,显示拉取请求的概述。

    Copilot Workspace 窗口的左侧是拉取请求更改的文件列表。

    Copilot Workspace 左侧 PR 中文件列表的屏幕截图。

  2. 要处理当前未被此拉取请求更改的文件,请单击“此拉取请求中的文件”,然后从下拉列表中选择“此存储库中的所有文件”********。

  3. 单击列表中的文件,在 Workspace 编辑器中打开该文件。

    该文件显示在差异视图中。 你可以根据需要更改视图。 请参阅本文后面的“更改 Workspace 选项”。

    你可以在提交更改前打开和更改多个文件。

  4. 完成更改后,单击“评审并提交”****。

    将显示“提交更改”面板****。 Copilot 会根据你所做的更改自动生成提交消息。 你可以编辑该消息并根据需要添加扩展描述。

    “提交更改”面板的屏幕截图,其中显示了自动生成的提交消息和三个已更改的文件。

    面板会列出已更改的文件。 你可以展开每个文件以查看所做的更改。

  5. (可选)如果编辑了多个文件,并且决定不在单次提交中提交所有更改,请清除不想提交其更改的文件旁边的复选框。 单击“提交更改”时,应用于这些文件的更改将保留,但不会提交,你可以在单独的提交中将它们添加到拉取请求中****。

    Note

    如果清除某些文件旁边的复选框,则可能需要重写提交消息以避免提及对这些文件的更改。

  6. 单击“提交更改”。

    或者,单击“重置所有更改”,将文件恢复到其在拉取请求中的当前状态,这会丢失在 Workspace 编辑器面板中所做的更改****。 重置更改无法撤消。

使用 Copilot 处理拉取请求注释

可以使用 Copilot Workspace 依次处理拉取请求的所有注释,然后提交选择在单次提交中进行的任何更改。

  1. 在包含代码更改建议的注释中,单击“在 Workspace 中打开”。****

    Copilot 代码评审 的编码建议的屏幕截图。

    Copilot Workspace 随即打开,在 Workspace 窗口右侧的“建议”面板中显示建议的更改。

  2. 评审建议的更改,然后单击“建议”面板底部的两个按钮之一:

    • “应用”- 如果同意建议的更改****。
    • “拒绝”- 如果不想进行建议的更改****。
  3. 如果拉取请求中有多条注释,可以单击“建议”面板底部的 > 箭头来跳到下一条注释****。

    “建议”面板的屏幕截图,其中显示了“>”箭头和“拒绝”与“应用”按钮。

  4. (可选)要查看拉取请求中所有注释的列表,请单击“建议”面板左上角的后退箭头。

    “建议”面板的屏幕截图,其中显示了左上角的后退箭头。

    如果已接受或拒绝任何建议,这些建议将显示在“已应用”和“已拒绝”下拉菜单中,以便可以轻松查看哪些建议尚未处理。

    “建议”面板中注释列表的屏幕截图。 两条注释待操作。 下面是标题为“1 条已应用”和“1 条已拒绝”的下拉链接。

  5. 评审完建议的更改后,单击“评审并提交”****。

  6. (可选)如果决定不在单次提交中提交所有已应用的更改,请清除不想提交其更改的文件旁边的复选框。 单击“提交更改”时,应用于这些文件的更改将保留,但不会提交,你可以在单独的提交中将它们添加到拉取请求中****。

  7. 单击“提交更改”。

    或者,单击“重置所有更改”,将建议恢复到其初始状态,这会丢失所做的应用或拒绝选择,并丢失你通过直接在 Workspace 编辑器面板中编辑文件所做的任何更改****。 重置更改无法撤消。

与 Copilot 谈论拉取请求

  1. 在 Workspace 窗口顶部,单击 按钮。

  2. 在 Copilot 面板底部的“询问 Copilot”框中,键入问题,然后按 Enter

    可以提出以下问题:

    • 当前显示的文件 - 例如,“如何改进此文件?”
    • 整个拉取请求**** - 例如,“此拉取请求中引用了哪些框架?”
    • 一般编程主题 - 例如,“Ruby 的最新版本是什么?”

    有关详细信息,请参阅“在 GitHub 中向 GitHub Copilot 提问”。

Note

目前,Copilot Workspace 的 公共预览版 并未提供所有 Copilot Chat 功能。

验证更改

Workspace 包括一个内置终端和一种快速生成、运行和测试代码的方法。

打开终端

要打开终端,请单击 Workspace 编辑器面板右上角的

Note

终端需要 codespace 才能运行。 如果未看到 图标,则可能需要等待几秒钟,以便 codespace 启动。

运行终端命令

可以直接在终端中键入命令,也可以使用快捷命令通过单击几下来运行常用命令。

配置个人快捷命令

可以配置在 Copilot Workspace 中处理特定项目时可使用的“生成”、“运行”和“测试”命令************。 如果已为存储库配置了命令,可以将其替换为供你自己个人使用的替代命令。

  1. 在 Workspace 窗口顶部,单击“ 配置”****。

    如果已经定义了“生成”、“运行”和“测试”快捷命令,将显示“ 生成”按钮而不是“ 配置”************。 单击“ 生成”按钮旁边的下拉箭头,然后从下拉菜单中单击“ 配置”

    “命令”下拉菜单的屏幕截图,其中“配置”选项以深橙色轮廓突出显示。

  2. 在“配置命令”对话框中,输入要用于“生成”、“运行”和“测试”选项的命令************。

  3. 单击“ 保存”。

为存储库配置快捷命令

可以为使用 Copilot Workspace 处理存储库拉取请求的每个人设置默认的“生成”、“运行”和“测试”命令************。

  1. 在存储库的根目录中创建或编辑名为 .devcontainer/devcontainer.json 的文件。

    Note

    .devcontainer/devcontainer.json 文件是为存储库创建的 codespace 的配置文件。 有关详细信息,请参阅“开发容器简介”。

  2. 按如下所示添加 commands 部分,将此处显示的示例命令替换为处理存储库的人员应该使用的命令。

    {
      "commands": {
        "Build": "make",
        "Run": "./bin/start",
        "Test": "make test"
      }
    }
    
  3. 单击“ 保存”。

使用 Workspace 快捷命令

  1. 要运行第一个定义的快捷命令(通常是“生成”),请单击 Workspace 窗口顶部的按钮****。

  2. 要运行其他快捷命令,请单击按钮旁边的下拉箭头,然后从下拉菜单中单击要运行的命令。

    “命令”下拉菜单的屏幕截图,其中“运行”选项以深橙色轮廓突出显示。

  3. 单击“运行”后,当进程正在运行时,可以再次单击下拉箭头,并从选项中选择停止或重启进程,或查看运行命令的输出****。

    正在运行的应用程序的下拉菜单屏幕截图,其中“停止”选项以深橙色轮廓突出显示。

预览 Web 应用程序

如果运行命令启动了 Web 服务器, 按钮将显示在 Workspace 窗口的顶部。

单击此按钮可在浏览器的新标签页中预览服务器输出。

更改 Workspace 选项

可以更改文件在 Copilot Workspace 中的显示方式。

更改差异视图

  1. 单击 Workspace 编辑器面板右上角的比较选取器图标 ()。

  2. 选择视图选项:

    • “统一”- 在单个视图中显示更改,添加的行以绿色突出显示,删除的行以红色突出显示****。
    • “拆分”- 在拆分视图中显示更改,左侧是原始文件,右侧是新文件****。
    • 隐藏 - 显示此拉取请求中文件的当前状态,不显示拉取请求所做的更改****。

长行换行

  1. 单击 Workspace 编辑器面板右上角的省略号 (...)****。
  2. 单击“换行”以打开或关闭换行****。