使用 GitHub Copilot 分析和解释代码

已完成

开发人员使用GitHub Copilot来集思广益、探索编码工具和技术、评估问题和潜在修补程序,以及解释复杂或不熟悉的代码。 GitHub Copilot可以帮助你了解代码的用途和行为,以便更轻松地使用和维护代码。

以下每个GitHub Copilot功能都可用于分析或解释代码:

  • 聊天视图:使用聊天视图询问有关代码项目、编码主题和常规技术概念的问题。
  • 内联聊天:直接从编辑器启动内联聊天会话,询问特定代码部分。
  • 智能操作:运行“解释智能操作”来解释所选代码,甚至无需编写提示语。
  • 快速聊天:提出一个快速问题,并返回到你正在执行的工作。

在 Ask 代理模式下使用聊天视图分析和解释代码

Visual Studio Code中的聊天视图用于管理你和 AI 对程序员之间的聊天对话。 默认情况下,聊天视图位于Visual Studio Code窗口右侧的辅助侧栏中。 提交提示时,AI 配对程序员使用自然语言说明、代码片段和其他相关信息做出响应。 响应显示在聊天视图中。

若要访问聊天视图,可以选择Toggle Chat按钮(Copilot图标),从GitHub Copilot菜单中选择打开聊天,或使用Ctrl+Alt+I键盘快捷方式。 聊天视图默认为 Ask 代理模式,但在打开和隐藏之间切换时保留最近选择的模式。

可以在 Ask 代理模式下对各种主题使用聊天视图。 例如:

  • 询问有关编码和技术概念的问题(“、”“)
  • 有关如何最好地解决编码问题(“”)的集思广益
  • 解释代码块 (“”, “)
  • 建议代码修复 (“”, “)
  • 询问 VS Code 设置(“”)相关信息

显示询问单一实例模式的聊天视图的屏幕截图。

Ask 代理模式支持以下接口功能:

  • 聊天视图工具栏:聊天视图工具栏位于聊天视图的右上角。 可以使用工具栏管理聊天历史记录、启动新聊天、在另一个位置打开聊天视图或隐藏聊天视图。 将鼠标指针悬停在工具栏按钮图标上以查看说明。

  • 聊天响应区域:聊天响应区域指聊天视图工具栏下方的空间,其中 GitHub Copilot 显示响应。 响应包括代码建议、说明、交互式元素以及与提示相关的其他信息。

  • 附加上下文按钮:“附加上下文”按钮(剪纸图标)位于聊天视图的底部部分。 可以使用此按钮将工作区中的文件、选择、符号或其他资源附加为聊天提示的上下文。

  • 请询问Copilot:“Ask Copilot”文本框是用于输入提示的地方。 使用 Ask 代理模式时,提示可以包括聊天参与者、斜杠命令和聊天变量。

    在“询问代理”模式下,可以使用聊天参与者来指定问题上下文。 例如,你可以使用 来指示上下文是你的工作区文件。

  • “启动语音聊天”按钮:“开始语音聊天”按钮位于“询问Copilot”文本框左侧。 可以使用此按钮来启用或禁用与GitHub Copilot的语音交互。 启用语音交互后,可以使用语音提出GitHub Copilot问题。

  • 代理下拉列表:代理下拉列表位于“询问Copilot”文本框右侧。 可以使用此下拉列表在“询问”、“代理”和“计划”模式之间进行切换。

  • “选取模型”菜单:“选取模型”菜单位于代理下拉列表右侧。 可以使用此按钮选择GitHub Copilot用于生成响应的模型。 根据GitHub Copilot订阅、GitHub Copilot设置和区域中可用的模型,模型选择可能会受到限制。

  • “发送”按钮:“发送”按钮位于“选取模型”菜单右侧。 可以使用此按钮将提示提交到GitHub Copilot,并接收响应。 “发送”按钮包含一个下拉列表,其中包含有关如何提交提示的选项。

使用内联聊天分析和解释代码

内联聊天功能允许直接从编辑器启动聊天会话。 如果想要询问有关特定代码(节、行或变量)的问题,而无需离开编辑器,则内联聊天非常有用。 响应显示在内联聊天窗口中。

若要访问内联聊天,可以从GitHub Copilot菜单中选择Editor 内联聊天,或使用Ctrl+I键盘快捷方式。 使用Esc键关闭嵌入式聊天窗口。

可以使用内联聊天来查询常规编码主题,但它最适合在活动编辑器中向代码提问。 例如:

  • 解释代码块 (“”, “)
  • 检查问题(“”、“”)
  • 询问有关编码或技术概念的问题(“”)

显示询问所选代码的内联聊天的屏幕截图。

内联聊天支持以下功能:

  • 要求 Copilot:“要求 Copilot”文本框是输入提示的地方。 使用内联聊天时,提示可以包含斜杠命令和聊天变量,但不支持聊天参与者。

  • “启动语音聊天”按钮:“开始语音聊天”按钮位于“询问Copilot”文本框左侧。 可以使用此按钮来启用或禁用与GitHub Copilot的语音交互。 启用语音交互后,可以使用语音提出GitHub Copilot问题或请求代码建议。

  • 选择模型菜单:“选取模型”菜单允许选择GitHub Copilot用于生成响应的模型。 根据GitHub Copilot订阅、GitHub Copilot设置和区域中可用的模型,模型选择可能会受到限制。

  • “发送”按钮:“发送”按钮位于“选取模型”菜单右侧。 您可以使用此按钮将提示提交到GitHub Copilot并接收响应。 “发送”按钮包含一个下拉列表,其中包含有关如何提交提示的选项。

使用解释智能操作来解释代码

解释智能作用于解释编辑器中打开的代码。 可以通过选择代码块、单个代码行或变量来缩小焦点范围。 如果未选择任何代码,说明将引用活动文件。 解释智能操作在“聊天”视图中显示响应。

要访问 Explain 功能,可以在活动的代码编辑器中右键单击,选择 Copilot,然后选择 Explain

显示上下文菜单中“解释智能操作”的屏幕截图。

使用“快速聊天”窗口分析和解释代码

使用“快速聊天”功能,您可以快速提问,然后继续进行您的工作。 当想要提出快速问题而不影响你在聊天视图中生成的聊天历史记录时,快速聊天功能非常有用。 响应显示在“快速聊天”窗口中。

若要访问“快速聊天”窗口,可以从GitHub Copilot菜单中选择Quick Chat,或使用Ctrl+Shift+Alt+L键盘快捷方式。

“快速聊天”窗口支持聊天视图在 Ask 代理模式下提供的相同上下文功能,但它不提供管理聊天历史记录的方法。 “快速聊天”窗口专为快速问题和解答而设计,因此它不包括聊天视图提供的所有功能。

显示“快速聊天”窗口的屏幕截图。

可以将快速聊天用于与 Ask 代理模式下的聊天视图相同的问题类型。 但是,快速聊天最适合不属于较大对话的快速问题。

概要

GitHub Copilot提供了多个可用于分析和解释代码的功能。 聊天视图、内联聊天、解释智能操作和快速聊天窗口都提供了各种方式,让您可以就代码项目、编程主题和常规技术概念进行提问。 通过使用这些功能,可以更好地了解代码并改进编码技能。