🚀 在 VS Code 中

VS Code 中 Copilot Chat 入门

本教程将引导您在 Visual Studio Code 中使用 Copilot Chat。您可以使用 AI 驱动的聊天对话来帮助重构代码、提高代码理解以及查找配置 VS Code 的方法。

如果您是 VS Code 中 Copilot 的新手,请参阅 Copilot 概述 或在 Copilot 快速入门 中进行设置并发现关键功能。

提示

如果您还没有 Copilot 订阅,您可以通过注册 Copilot 免费计划 来免费使用 Copilot,并获得每月有限的补全和聊天互动次数。

先决条件

要在 VS Code 中使用 GitHub Copilot,您需要具备以下条件

  • 访问 GitHub Copilot
  • VS Code 中安装了 GitHub Copilot 扩展

按照 GitHub Copilot 设置指南 中的步骤获取 GitHub Copilot 的访问权限并在 VS Code 中安装 Copilot 扩展。

开始您的首次聊天对话

Copilot Chat 允许您使用自然语言与 GitHub Copilot 交互,以提问并接收与编码相关问题的答案。

在本教程中,您将创建一个简单的 Node.js Web 应用程序。

  1. 打开一个新的 VS Code 窗口。您将在后续步骤中创建一个新的工作区。

  2. 从标题栏的 Copilot 菜单中选择打开聊天,或使用 ⌃⌘I (Windows,Linux Ctrl+Alt+I) 键盘快捷键。

    Screenshot of VS Code editor, showing the Copilot Chat view, highlighting the chat menu in the Command Center.

    请注意,聊天视图在辅助侧边栏中打开。将聊天视图放在侧边可以使您在处理代码时保持对话进行。

  3. 在聊天视图中,从聊天模式下拉列表中选择询问

    使用询问模式向 Copilot 询问有关编码和技术主题的问题、解释代码或集思广益。

    Screenshot of VS Code Copilot Chat view, showing the Ask mode dropdown.

  4. 让我们向 Copilot 询问有关流行的 Web 框架。在聊天输入字段中输入“最流行的 Web 框架有哪些?”。

    Copilot 返回一个流行的 Web 框架列表。尝试提出后续问题以获取有关特定框架的更多信息,或比较框架。例如,您可以询问“Express 和 Fastify 之间有什么区别?”或“如何进行服务器端渲染?”。

  5. 要搭建新的 Web 应用程序,请在聊天输入字段中输入“使用 typescript 和 pug 的新 express 应用程序”。

    请注意 Copilot 如何返回表示新工作区文件的文件树。选择文件树中的任何文件以预览其内容。

    Screenshot of VS Code Copilot Chat view, showing a file tree for a new workspace and a 'Create Workspace' button.

  6. 选择创建工作区以创建应用程序,并在磁盘上选择应在其中创建工作区的文件夹。

    在对话框中选择打开以在 VS Code 中打开新创建的工作区。

    注意

    VS Code 可能会询问您是否要信任新的工作区。选择是的,我信任内容以信任工作区。获取有关工作区信任的更多详细信息。

通过内联聊天保持流畅

虽然聊天视图非常适合保持对话进行,但编辑器内联聊天针对您想要询问 Copilot 有关您正在编辑器中积极处理的代码的情况进行了优化。例如,重构特定的代码段或解释复杂的算法。

让我们看看如何使用编辑器内联聊天进行代码重构。

  1. 打开 app.ts 文件,并使用 ⌘I (Windows,Linux Ctrl+I) 键盘快捷键调出编辑器内联聊天。或者,从标题栏的 Copilot 菜单中选择编辑器内联聊天

    聊天输入字段以内联方式显示在编辑器中,您可以在其中输入聊天提示并向 Copilot 询问有关编辑器中代码的问题。

    Screenshot of VS Code editor, highlighting the Inline Chat popup control.

  2. 在聊天输入字段中输入“添加对 JSON 输出的支持”并按 Enter

    请注意 Copilot 如何提供代码建议以在 Express 中添加对 JSON 输出的支持。

    Screenshot of VS Code editor with the suggested code change.

  3. 选择接受关闭以应用或忽略更改。

    如果您对建议的代码更改不满意,您可以选择重新运行请求控件或提出后续问题以获得另一个建议。

提示

在编辑器中单击鼠标右键,然后选择 Copilot 上下文菜单以访问常用的 Copilot 命令,例如修复或解释代码或生成测试。

跨多个文件进行编辑

通过内联聊天,您对单个文件进行了更改。您还可以通过切换到聊天视图中的编辑模式,使用 Copilot 对工作区中的多个文件进行更改。

让我们使用编辑模式来使用 .env 文件来存储 Web 应用程序的配置。

  1. 打开聊天视图,然后从聊天模式下拉列表中选择编辑

    Screenshot of VS Code Copilot Chat view, showing the Edit mode dropdown.

  2. 为了帮助 Copilot 理解您的请求范围,让我们将 package.jsonapp.ts 作为上下文添加到提示中。

    1. 在聊天视图中选择添加上下文,在搜索字段中键入 package,然后从文件列表中选择 package.json 文件。请注意,您可以添加多种类型的上下文。

    2. 在编辑器中打开 app.ts 文件,并注意 Copilot 会自动将活动文件添加到聊天上下文。

  3. 在聊天输入字段中输入“使用 .env 文件进行配置”并按 Enter

  4. 请注意 Copilot 如何跨多个文件进行更新,并在您的工作区中添加新的 .env 文件。

    聊天视图以粗体文本显示聊天视图中已更改的文件。

    Screenshot of VS Code editor, showing the suggested code change in the app.ts file.

  5. 在聊天视图中选择保留以确认所有建议的更改。

    使用编辑器中的叠加控件轻松导航和查看文件中各个更改。

启动代理式编码流程

对于更复杂的请求,您可以使用代理模式,让 Copilot 自主计划和执行完成请求所需的任务。这些任务可能涉及编辑代码,但也包括在终端中运行命令。在代理模式下,Copilot 可能会调用不同的工具来完成任务。

让我们使用代理模式使 Web 应用程序成为关于分享旅行技巧的博客并添加测试。

  1. 打开聊天视图,然后从聊天模式下拉列表中选择代理

    Screenshot of VS Code Copilot Chat view, showing the Agent mode dropdown.

  2. 在聊天输入字段中输入“使应用程序成为旅行博客。添加测试以避免代码回归。”并按 Enter

    请注意,您无需将上下文添加到提示中。代理模式会自动分析工作区中的代码。

  3. Copilot 迭代以应用代码更改并运行命令,例如运行测试。通过在聊天视图中选择继续来确认终端命令。

    Screenshot of VS Code editor, showing the Chat view asking to confirm running tests in the terminal.

    根据请求的复杂性,Copilot 可能需要几分钟才能完成所有任务。如果在此过程中遇到问题,它会迭代以修复它们。

  4. Copilot 完成任务后,请查看更改并测试应用程序。

    您还可以通过向 Copilot 发出“运行应用程序”或“启动服务器”之类的提示来要求 Copilot 运行应用程序。

恭喜

恭喜,您已成功在 VS Code 中使用 Copilot Chat 来提问并对工作区中的代码进行编辑。继续尝试不同的提示和聊天模式,以充分利用 Copilot Chat。

其他资源