什么是 Visual Studio 的 GitHub Copilot 补全?

Visual Studio 中的 GitHub Copilot 可增强 Visual Studio 中的 AI 辅助开发,帮助你在编写代码时更加高效。

在本文中,你将了解 Copilot 补全,它是 AI 支持的配对程序员,适用于 Visual Studio,可提供上下文感知的代码完成、建议,甚至是整个代码片段。 这个功能强大的工具有助于在 Visual Studio 中进行 AI 辅助开发,可帮助开发人员更高效地编写代码,减少重复任务所用的时间,并最大程度地减少错误。

有关 Visual Studio 中的 GitHub Copilot Chat 的详细信息,请参阅关于 Visual Studio 中的 GitHub Copilot Chat

GitHub Copilot 的工作原理

GitHub Copilot 的工作原理是利用先进的机器学习模型,这些模型是在 GitHub 存储库中正式发布的庞大代码数据集上训练的。 当你键入代码时,AI 会分析上下文并实时提供相关建议。 你也可以通过编写自然语言注释来描述要让代码执行的操作,以便接收建议。

经过动画处理的屏幕截图,其中显示了 GitHub Copilot 扩展的代码完成功能。

此外,你还可以使用 GitHub Copilot 将注释转换为代码、创建单元测试、创建 SQL 查询等。

先决条件

若要开始,需要:

GitHub Copilot 支持多种编程语言和框架,包括但不限于:C#、C++和 Python。

获取适用于 Visual Studio 的 GitHub Copilot

使用 Visual Studio 版本 17.10 或更高版本时, 统一的 GitHub Copilot 扩展 可作为 Visual Studio 安装程序中的推荐组件提供。 默认情况下,它将随所有工作负载一起安装,除非你选择在安装期间排除它。

将 GitHub Copilot 用于代码补全和建议

在编辑器中键入代码或注释时,GitHub Copilot 会提供上下文感知的代码补全和建议。 GitHub Copilot 为多种语言提供建议,但特别适用于 Python、JavaScript、TypeScript、Ruby、Go、C# 和 C++。 以下示例是用 C# 语言编写的,但其他语言的工作方式类似。

  1. 打开 Visual Studio 并创建一个新的 C# 项目。

  2. 在编辑器中打开 C# 文件 (Program.cs)。

  3. 在代码编辑器中键入注释或方法签名,以便查看来自 GitHub Copilot 的内联代码建议。

        // method to add two numbers
    
        int subtractNumbers(
    
  4. 将鼠标悬停在建议上,可以看到 GitHub Copilot 命令面板。

    接受建议

    选择 Tab 或按 以接受建议,或者继续键入以拒绝建议。Tab

    显示在 Visual Studio 中接受 GitHub Copilot 代码建议的屏幕截图

    修改建议

    选择 Alt+/ 或按 以修改来自 Copilot 的建议。Alt+/ 可以通过在内联聊天中添加上下文或通过编辑补全内容来修改和整理 GitHub Copilot 建议。

    显示在 Visual Studio 中修改 GitHub Copilot 代码建议的屏幕截图

    如果未显示命令面板,则可能已达到其显示的默认限制。 若要更改此项,请转到“工具”“选项”>“IntelliCode”“高级”,并调整“取消提示文本的最小提交数”的值。>>

  5. 请添加以下代码以查看来自 GitHub Copilot 的代码补全。

        int a = 5;
        int b = 10;
        int sum
    

    显示在 Visual Studio 中使用 GitHub Copilot 补全的动画屏幕截图。

    提示

    • 使用Alt+手动触发完成操作
    • 使用 Alt+.(下一个)和 Alt+,(上一个)循环切换可用的完成项。

内容排除

使用 Visual Studio 2022 版本 17.11 时,内容排除可用于 Visual Studio 中的 GitHub Copilot 补全。 补全和建议不可用于管理员排除的内容。若要了解详细信息,请参阅配置 GitHub Copilot 的内容排除项

代码引用

使用 Visual Studio 2022 版本 17.13 时,代码引用可用于 Visual Studio 中的 GitHub Copilot 补全。 如果你或你的组织已启用与公共代码匹配的建议,那么当你接受与公共 GitHub 存储库中的代码匹配的补全内容时,Copilot 会通知你。

显示在 Visual Studio 中使用 GitHub Copilot 补全代码引用的屏幕截图。 :::

选择“查看代码匹配”,在“输出窗口”中查看 GitHub Copilot 日志中的详细信息。 日志条目包括指向 GitHub.com 页的链接,可在其中查看有关许可证类型和对公共 GitHub 存储库中类似代码的引用的详细信息。

显示输出窗口中的代码引用日志条目的屏幕截图。

通过代码引用,你可以做出有关使用代码归属或从项目中删除代码的明智决定。

完成模型

GPT-4o Copilot 代码完成模型适用于 Visual Studio 版本 17.14 预览版 2 或更高版本中的 GitHub Copilot。 若要尝试新模型以获得更好的建议和性能,请在工具选项中的 GitHub Copilot“Copilot 完成”下拉列表中选择 GPT-4o Copilot。 你还可以从 IDE 右上角的 Copilot 徽章中访问 设置 > 选项

显示完成模型选取器的屏幕截图。

如果在下拉列表中看不到新的 GPT-4o 模型,请尝试重启 Visual Studio 以检索最新的模型列表。

访问

  • 如果你是 Copilot Pro 用户,则新模型适用于 17.14 预览版 2 及更高版本。
  • 如果你是 Copilot Business 或 Enterprise 用户,则管理员需要通过在 github.com 上的 Copilot 策略设置中选择加入编辑器预览功能来为组织启用此模型。
  • 如果你是 Copilot Free 用户,使用此模型将计入你每月可享的2,000次免费使用额度。

文档注释生成

若要对 C++ 或 C# 项目文件使用自动文档注释生成,请根据设置配置键入注释模式,例如, ///Copilot 会根据函数的内容立即完成函数说明。

动画屏幕截图,其中显示了使用 Copilot 功能的自动文档注释生成。

浏览 GitHub Copilot

若要查看 GitHub Copilot 的实际操作,请查看以下视频教程。

视频时长:1.19 分钟

后续步骤

若要详细了解当前适用于 Visual Studio 的 GitHub Copilot 扩展,建议浏览以下资源: