Skip to main content

使用 GitHub Copilot 在 IDE 中获取代码建议

在编辑器中使用 GitHub Copilot 获取代码建议。

开始免费试用

关于 GitHub Copilot 和 JetBrains IDE

本指南将演示如何从 JetBrains IDE 中的 GitHub Copilot 获取编码建议。 要查看其他常用编码环境的说明,请使用页面顶部的工具切换器。

本指南中的示例使用 Java,但其他语言的工作方式类似。 GitHub Copilot 为多种语言和各种框架提供建议,但尤其适用于 Python、JavaScript、TypeScript、Ruby、Go、C# 和 C++。 GitHub Copilot 还可以帮助生成数据库的查询,生成 API 和框架的建议,并可以帮助开发基础结构即代码。

先决条件

  • Copilot 订阅。 要在 JetBrains 中使用 GitHub Copilot,必须拥有有效的 GitHub Copilot 订阅。 有关如何访问 Copilot 的信息,请参阅“什么是 GitHub Copilot?”。

  • 兼容的 JetBrains IDE。 若要在 JetBrains 中使用 GitHub Copilot,必须安装兼容的 JetBrains IDE。 GitHub Copilot 与以下 IDE 兼容:

    • IntelliJ IDEA(旗舰版、社区版、教育版)
    • Android Studio
    • AppCode
    • CLion
    • Code With Me Guest
    • DataGrip
    • DataSpell
    • GoLand
    • JetBrains Client
    • MPS
    • PhpStorm
    • PyCharm(专业版、社区版、教育版)
    • Rider
    • RubyMine
    • RustRover
    • WebStorm
    • Writerside

    请参阅 JetBrains IDE 工具查找器进行下载。

  • GitHub Copilot**** 插件。 请参阅 JetBrains Marketplace 中的 GitHub Copilot 插件。 有关安装说明,请参阅“在环境中安装 GitHub Copilot 扩展”。

  • 在 JetBrains IDE 中登录到 GitHub。 有关身份验证说明,请参阅“在环境中安装 GitHub Copilot 扩展”。

获取代码建议

GitHub Copilot 会在你键入时提供编码建议。 例如,在一个 Java 文件中,键入 class Test 以创建一个类。

GitHub Copilot 将自动以灰色文本建议类正文。 要接受建议,请按 Tab

也可以在注释内使用自然语言描述要执行的操作,GitHub Copilot 会提供代码建议以实现你的目标。 例如,在一个 Java 文件中键入此注释:

Java
// find all images without alternate text
// and give them a red border
void process () {

GitHub Copilot 会自动提供代码建议。 要接受建议,请按 Tab

GitHub Copilot 将尝试与代码的上下文和样式匹配。 始终可以编辑建议的代码。

Tip

如果从 Copilot 收到有限的建议或未收到任何建议,则表明你可能启用了重复检测。 有关重复检测的更多信息,请参阅“以单个订阅者身份管理 Copilot 策略”。

显示替代建议

对于任何给定的输入,GitHub Copilot 可以提供多个建议。 可以选择要使用的建议,或拒绝所有建议。

例如,在一个 Java 文件中键入下面这一行内容,然后按 Enter

Java
private int calculateDaysBetweenDates(Date date1,

GitHub Copilot 将向你显示建议。

现在,将鼠标悬停在建议上方,以显示用来选择建议的 GitHub Copilot 控件。 要显示下一批或上一批建议,请单击控件中的向前或向后箭头按钮。

也可以使用键盘快捷方式显示替代建议:

OS查看下一个建议查看上一个建议
macOSOption+]Option+[
Windows 或 LinuxAlt+]Alt+[

要接受建议,请单击 Copilot 命令面板中的“接受”,或按 Tab。要拒绝所有建议,请按 Esc

在新选项卡中显示多个建议

如果不想使用 GitHub Copilot 提供的任何初始建议,可以在新选项卡中显示多个建议。

例如,在一个 Java 文件中键入下面这一行内容:

Java
private int calculateDaysBetweenDates(Date date1,

GitHub Copilot 将向你显示建议。

要打开一个具有多个其他建议的新选项卡,请使用如下键盘快捷方式,然后单击“打开 GitHub Copilot”:****

操作系统打开多个建议
macOSCommand+Shift+A
Windows 或 LinuxCtrl+Enter

要接受建议,请单击建议下方的“接受建议编号”。 若要拒绝所有建议,请关闭选项卡。

接受部分建议

如果不想接受 GitHub Copilot 的完整建议,可以接受下一个单词或下一行建议。

例如,在一个 Java 文件中键入下面这一行内容:

Java
private int calculateDaysBetweenDates(Date date1,

GitHub Copilot 将以灰色文本显示建议。 具体的建议可能会有所不同。

现在,将鼠标悬停在建议上方,以显示用来选择建议的 GitHub Copilot 控件。 要只接受建议的下一个单词,请单击控件中的“接受单词”。****

或者,也可以使用键盘快捷方式接受建议的下一个单词:

操作系统接受下一个字词接受下一行
macOSCommand+Command+Control+
Windows 或 LinuxControl+Control+Alt+

如果希望接受下一行建议,则需要为命令 editor.action.inlineSuggest.acceptNextLine 设置自定义键盘快捷方式。 有关设置自定义键盘快捷键的详细信息,请参阅“在环境中配置 GitHub Copilot”。

关于 GitHub Copilot 和 Visual Studio

本指南将演示如何从 Visual Studio for Windows 中的 GitHub Copilot 获取编码建议。 要查看其他常用编码环境的说明,请使用页面顶部的工具切换器。

本指南中的示例使用 C#,但其他语言的工作方式类似。 GitHub Copilot 为多种语言和各种框架提供建议,但尤其适用于 Python、JavaScript、TypeScript、Ruby、Go、C# 和 C++。 GitHub Copilot 还可以帮助生成数据库的查询,生成 API 和框架的建议,并可以帮助开发基础结构即代码。

先决条件

  • Copilot 订阅。 要在 Visual Studio 中使用 GitHub Copilot,必须拥有有效的 GitHub Copilot 订阅。 有关如何访问 Copilot 的信息,请参阅“什么是 GitHub Copilot?”。

  • Visual Studio 的兼容版本。 要在 Visual Studio 中使用 GitHub Copilot,必须安装 Visual Studio for Windows 版本 2022 17.8 或更高版本。 有关更多信息,请参阅 Microsoft 文档中的“安装 Visual Studio”。

  • 适用于 Visual Studio 的 GitHub Copilot 扩展。 有关如何安装 Copilot 扩展的说明,请参阅 Microsoft 文档中的“在 Visual Studio 中安装 GitHub Copilot”。

  • 将 GitHub 帐户添加到 Visual Studio。 请参阅 Microsoft 文档中的将 GitHub 帐户添加到 Visual Studio 密钥链

获取代码建议

GitHub Copilot 会在你键入时提供编码建议。 例如,在一个 C# 文件中键入此函数签名:

C#
int CalculateDaysBetweenDates(

GitHub Copilot 会自动以灰色文本建议整个函数正文。 要接受建议,请按 Tab

也可以在注释内使用自然语言描述要执行的操作,GitHub Copilot 会提供代码建议以实现你的目标。 例如,在一个 C# 文件中键入此注释:

C#
using System.Xml.Linq;

var doc = XDocument.Load("index.xhml");

// find all images

GitHub Copilot 将建议函数的实现。 要接受建议,请按 Tab

Tip

如果从 Copilot 收到有限的建议或未收到任何建议,则表明你可能启用了重复检测。 有关重复检测的更多信息,请参阅“以单个订阅者身份管理 Copilot 策略”。

显示替代建议

对于任何给定的输入,GitHub Copilot 可以提供多个建议。 可以选择要使用的建议,或拒绝所有建议。

例如,在一个 C# 文件中键入此函数签名:

C#
int CalculateDaysBetweenDates(

GitHub Copilot 将向你显示建议。

现在,将鼠标悬停在建议上方,以显示用来选择建议的 GitHub Copilot 控件。 要显示下一批或上一批建议,请单击控件中的向前或向后箭头按钮。

或者,也可以按键盘上的 Alt+. (或 Alt+,),以显示替代建议。

要接受建议,请单击 Copilot 命令面板中的“接受”,或按 Tab。要拒绝所有建议,请按 Esc

关于 GitHub Copilot 和 Visual Studio Code

本指南将演示如何从 Visual Studio Code 中的 GitHub Copilot 获取编码建议。 要查看其他常用编码环境的说明,请使用页面顶部的工具切换器。

本指南中的示例使用 JavaScript,但其他语言的工作方式类似。 GitHub Copilot 为多种语言和各种框架提供建议,但尤其适用于 Python、JavaScript、TypeScript、Ruby、Go、C# 和 C++。 GitHub Copilot 还可以帮助生成数据库的查询,生成 API 和框架的建议,并可以帮助开发基础结构即代码。

先决条件

  • Copilot 订阅。 要在 Visual Studio Code 中使用 GitHub Copilot,必须拥有有效的 GitHub Copilot 订阅。 有关如何访问 Copilot 的信息,请参阅“什么是 GitHub Copilot?”。

  • Visual Studio Code。 若要在 Visual Studio Code 中使用 GitHub Copilot,必须安装 Visual Studio Code。 有关详细信息,请参阅 Visual Studio Code 下载页面

  • 适用于 Visual Studio Code 的 Copilot 扩展。 要在 Visual Studio Code 中使用 GitHub Copilot,必须安装 GitHub Copilot 扩展。 有关更多信息,请参阅 Visual Studio Code 文档中的在 Visual Studio Code 中设置 GitHub Copilot

获取代码建议

GitHub Copilot 会在你键入时提供编码建议。 例如,在一个 JavaScript 文件中键入此函数标头:

JavaScript
function calculateDaysBetweenDates(begin, end) {

GitHub Copilot 会自动建议函数的剩余部分。 要接受建议,请按 Tab

也可以在注释内使用自然语言描述要执行的操作,GitHub Copilot 会提供代码建议以实现你的目标。 例如,在一个 JavaScript 文件中键入此注释:

JavaScript
// write a function to
// find all images without alternate text
// and give them a red border

GitHub Copilot 会自动提供代码建议。 要接受建议,请按 Tab

Tip

如果从 Copilot 收到有限的建议或未收到任何建议,则表明你可能启用了重复检测。 有关重复检测的更多信息,请参阅“以单个订阅者身份管理 Copilot 策略”。

显示替代建议

对于任何给定的输入,GitHub Copilot 可以提供多个建议。 可以选择要使用的建议,或拒绝所有建议。

例如,在一个 JavaScript 文件中键入此函数标头,然后按 Enter

JavaScript
function calculateDaysBetweenDates(begin, end) {

GitHub Copilot 将向你显示建议。

现在,将鼠标悬停在建议上方,以显示用来选择建议的 GitHub Copilot 控件。 要显示下一批或上一批建议,请单击控件中的向前或向后箭头按钮。

也可以使用键盘快捷方式显示替代建议:

OS查看下一个建议查看上一个建议
macOSOption (⌥) 或 Alt+]Option (⌥) 或 Alt+[
Windows 或 LinuxAlt+]Alt+[

要接受建议,请单击 Copilot 命令面板中的“接受”,或按 Tab。要拒绝所有建议,请按 Esc

在新选项卡中显示多个建议

如果不想使用 GitHub Copilot 提供的任何初始建议,可以在新选项卡中显示多个建议。

例如,在一个 JavaScript 文件中键入此函数标头,然后按 Enter

JavaScript
function calculateDaysBetweenDates(begin, end) {

GitHub Copilot 将向你显示建议。 现在,按 Ctrl+Enter,以打开具有多个其他选项的新选项卡。

要接受建议,请单击建议下方的“接受建议编号”。 若要拒绝所有建议,请关闭选项卡。

接受部分建议

如果不想接受 GitHub Copilot 的完整建议,可以接受下一个单词或下一行建议。

例如,在一个 JavaScript 文件中键入此函数标头,然后按 Enter

JavaScript
function calculateDaysBetweenDates(begin, end) {

GitHub Copilot 会自动以灰色文本建议整个函数正文。 具体的建议可能会有所不同。

现在,将鼠标悬停在建议上方,以显示用来选择建议的 GitHub Copilot 控件。 要只接受建议的下一个单词,请单击控件中的“接受单词”。****

或者,也可以使用键盘快捷方式接受建议的下一个单词:

操作系统接受下一个字词
macOSCommand+
Windows 或 LinuxControl+

如果希望接受下一行建议,则需要为命令 editor.action.inlineSuggest.acceptNextLine 设置自定义键盘快捷方式。 有关设置自定义键盘快捷键的详细信息,请参阅“在环境中配置 GitHub Copilot”。

关于 GitHub Copilot 和 Vim/Neovim

本指南将演示如何从 Vim/Neovim 中的 GitHub Copilot 获取编码建议。 要查看其他常用编码环境的说明,请使用页面顶部的工具切换器。

先决条件

  • Copilot 订阅。 要在 Vim/Neovim 中使用 GitHub Copilot,必须拥有有效的 GitHub Copilot 订阅。 有关如何访问 Copilot 的信息,请参阅“什么是 GitHub Copilot?”。

  • Vim/Neovim 的兼容版本。 要在 Vim/Neovim 中使用 GitHub Copilot,必须安装 Vim 版本 9.0.0185 / Neovim 版本 0.6 或更高版本以及 Node.js 版本 18 或更高版本。 有关详细信息,请参阅 Vim / Neovim 文档Node.js 网站

  • 适用于 Vim/Neovim 的 GitHub Copilot 扩展。 要在 Vim/Neovim 中使用 GitHub Copilot,必须安装 GitHub Copilot 插件。 有关详细信息,请参阅“在环境中安装 GitHub Copilot 扩展”。

了解如何在 Vim/Neovim 中使用 GitHub Copilot

当你在 Vim/Neovim 中键入时,GitHub Copilot 会提供建议内联。 要接受建议,请按 Tab 键。

有关如何在 Vim/Neovim 中使用 GitHub Copilot 的更多信息和指导,请运行如下命令,以查看插件文档:

Shell
:help copilot

关于 GitHub Copilot 和 Azure Data Studio

本指南将演示如何从 Azure Data Studio 中的 GitHub Copilot 获取编码建议。 要查看其他常用编码环境的说明,请使用页面顶部的工具切换器。

先决条件

  • Copilot 订阅。 要在 Azure Data Studio 中使用 GitHub Copilot,必须拥有有效的 GitHub Copilot 订阅。 有关如何访问 Copilot 的信息,请参阅“什么是 GitHub Copilot?”。

  • Azure Data Studio 的兼容版本。 若要在 Azure Data Studio 中使用 GitHub Copilot,必须安装 Azure Data Studio 1.44.0 或更高版本。 有关详细信息,请参阅 Azure Data Studio 文档中的 Azure Data Studio 下载页

  • 适用于 Azure Data Studio 的 GitHub Copilot 扩展。 要在 Azure Data Studio 中使用 GitHub Copilot,必须安装 GitHub Copilot 扩展。 有关详细信息,请参阅“在环境中安装 GitHub Copilot 扩展”。

获取代码建议

在 Azure Data Studio 中创建 SQL 数据库时,GitHub Copilot 可以提供内联建议。 例如,如果要编写联接两个表的查询,Copilot 可以建议联接条件,包括打开的编辑器中的列、工作区中的其他文件和常见语法模式。

在一个 SQL 文件中,键入如下查询:

SQL
SELECT [UserId], [Red], [Orange], [Yellow], [Green], [Blue], [Purple], [Rainbow]
FROM [Tag].[Scoreboard]
INNER JOIN

GitHub Copilot 将自动以灰色文本建议联接条件。 具体的建议可能会有所不同。 要接受建议,请按 Tab

也可以在注释内使用自然语言描述要执行的操作,GitHub Copilot 会提供代码建议以实现你的目标。 例如,在一个 SQL 文件中键入此注释:

SQL
SELECT TokenColor, COUNT(UserID) AS UserCount
FROM Tag.Users
GROUP BY TokenColor
-- pivot that query on tokencolor for Purple, Blue, Green, Yellow, Orange, Red
-- and rename the columns to match the colors
SELECT [Purple], [Blue], [Green], [Yellow], [Orange], [Red]

GitHub Copilot 会自动提供代码建议。 要接受建议,请按 Tab

Tip

如果从 Copilot 收到有限的建议或未收到任何建议,则表明你可能启用了重复检测。 有关重复检测的详细信息,请参阅“以单个订阅者身份管理 Copilot 策略”。

显示替代建议

对于某些建议,GitHub Copilot 可能会提供多个替代方法。 可以选择要采用的建议,或拒绝所有建议。

例如,在一个 SQL 文件中键入此查询:

SQL
SELECT [UserId], [Red], [Orange], [Yellow], [Green], [Blue], [Purple], [Rainbow]
FROM [Tag].[Scoreboard]
INNER JOIN

GitHub Copilot 将向你显示建议。

现在,将鼠标悬停在建议上方,以显示用来选择建议的 GitHub Copilot 控件。 要显示下一批或上一批建议,请单击控件中的向前或向后箭头按钮。

也可以使用键盘快捷方式显示替代建议:

OS查看下一个建议查看上一个建议
macOS选项+[Option+]
Windows 或 LinuxAlt+[Alt+]

要接受建议,请单击 Copilot 控件中的“接受”,或者按 Tab。要拒绝所有建议,请按 Esc

接受部分建议

如果不想接受 GitHub Copilot 的完整建议,可以接受下一个单词或下一行建议。

例如,在一个 SQL 文件中键入此查询:

SQL
SELECT [UserId], [Red], [Orange], [Yellow], [Green], [Blue], [Purple], [Rainbow]
FROM [Tag].[Scoreboard]
INNER JOIN

GitHub Copilot 将以灰色文本显示建议。 具体的建议可能会有所不同。

现在,将鼠标悬停在建议上方,以显示用来选择建议的 GitHub Copilot 控件。 要只接受建议的下一个单词,请单击控件中的“接受单词”。****

或者,也可以使用键盘快捷方式接受建议的下一个单词:

操作系统接受下一个字词
macOSCommand+
Windows 或 LinuxControl+

如果要接受下一行建议,则需要为命令 editor.action.inlineSuggest.acceptNextLine 设置自定义键盘快捷键。 有关设置自定义键盘快捷键的详细信息,请参阅 Microsoft 文档中的 Azure Data Studio 中的键盘快捷方式

Note

Xcode 的 GitHub Copilot 扩展为 公共预览版,可能随时更改。

关于适用于 Xcode 的 GitHub Copilot

本指南将演示如何从适用于 Xcode 的 GitHub Copilot 获取编码建议。 要查看其他常用编码环境的说明,请使用页面顶部的工具切换器。

先决条件

  • Copilot 订阅。 若要使用适用于 Xcode 的 GitHub Copilot,必须拥有有效的 GitHub Copilot 订阅。 有关如何访问 Copilot 的信息,请参阅“什么是 GitHub Copilot?”。

  • Xcode 和 macOS 的兼容版本****。 若要使用适用于 Xcode 的 GitHub Copilot,必须安装 Xcode 8.0 版或更高版本和 macOS Monterey (12.0) 或更高版本。 请参阅 Apple 开发人员网站上的 Xcode

  • 适用于 Xcode 的 GitHub Copilot 扩展****。 若要使用适用于 Xcode 的 GitHub Copilot,必须先安装适用于 Xcode 的 GitHub Copilot 扩展。 请参阅“在环境中安装 GitHub Copilot 扩展”。

获取代码建议

GitHub Copilot 会在你键入时提供编码建议。 例如,在一个 Swift 文件中键入此函数签名:

Shell
func CalculateDaysBetweenDates(

GitHub Copilot 会自动以灰色文本建议整个函数正文。 若要接受建议的第一行,请按 Tab。若要查看完整建议,请按住 Option,要接受完整建议,请按 Option+Tab

改进代码建议

如果遇到代码建议方面的问题(例如建议冲突或缺失),可以尝试以下操作:

  • 禁用 Xcode 的原生预测文本完成:为避免收到两组代码建议,可以禁用 Xcode 的原生预测文本完成****。 可以在 Xcode 设置中的“文本编辑”下的“编辑”选项卡中找到此设置。
  • 检查 Copilot 中的重复检测:如果从 Copilot 收到有限的建议或未收到任何建议,则表明你可能启用了重复检测****。 有关重复检测的详细信息,请参阅“以单个订阅者身份管理 Copilot 策略”。
  • 检查更新并重启 Xcode:确保扩展应用程序中的适用于 Xcode 的 Copilot 是最新版本,然后重启 Xcode****。

还可以在适用于 Xcode 的 Copilot 存储库中提出问题。

后续步骤