跳到主要内容

GitHub Copilot

GitHub Copilot 是 GitHub 开发的 AI 编程助手,提供智能代码补全、聊天辅助和代码解释功能。

概述

GitHub Copilot 功能:

  • 代码补全:根据上下文自动生成代码建议
  • Copilot Chat:与 AI 对话获取编程帮助
  • 代码解释:解释选中代码的功能
  • 单元测试生成:自动生成测试代码
  • 代码翻译:在不同语言间转换代码

安装与配置

支持的编辑器

  • Visual Studio Code
  • Visual Studio
  • JetBrains IDEs
  • Vim/Neovim
  • Azure Data Studio

VS Code 安装

  1. 安装 GitHub Copilot 扩展
  2. 安装 GitHub Copilot Chat 扩展
  3. 使用 GitHub 账号登录授权

配置选项

在 VS Code 设置中配置:

{
"github.copilot.enable": {
"*": true,
"yaml": false,
"plaintext": false
},
"github.copilot.editor.enableAutoCompletions": true,
"github.copilot.editor.enableCodeActions": true
}

代码补全

基本使用

在编辑器中输入代码时,Copilot 会自动提供建议:

  • 灰色文本为建议代码
  • Tab 接受建议
  • Esc 拒绝建议
  • Alt + ] 查看下一个建议
  • Alt + [ 查看上一个建议

注释驱动开发

通过编写注释让 Copilot 生成代码:

function calculateMonthlyPayment(principal, rate, years) {
}

Copilot 会根据函数名和参数生成实现。

更详细的注释:

function calculateMonthlyPayment(principal, rate, years) {
}

上下文理解

Copilot 会分析:

  • 当前文件内容
  • 相关导入语句
  • 项目结构
  • 编码风格

多建议查看

Ctrl + Enter 打开 Copilot 面板,查看多个建议:

Copilot Chat

打开聊天

  • Ctrl + Shift + I 打开内联聊天
  • 点击侧边栏 Copilot 图标打开聊天面板

常用命令

命令用途
/explain解释选中代码
/fix修复代码问题
/tests生成单元测试
/refactor重构代码
/docs添加文档注释
/translate翻译代码到其他语言

示例对话

解释代码

/explain 这段代码做了什么?

修复问题

/fix 这个函数有性能问题,请优化

生成测试

/tests 为这个函数生成单元测试

内联聊天

选中代码后按 Ctrl + I 打开内联聊天:

将这个函数改为异步函数

最佳实践

编写清晰的注释

好的注释示例:

不好的注释示例:

使用有意义的命名

好的命名:

function calculateTotalPrice(items, taxRate) {
}

不好的命名:

function calc(arr, x) {
}

提供上下文

在文件开头添加上下文注释:

分步请求

复杂任务分步完成:

1. 创建用户模型
2. 添加验证逻辑
3. 实现密码加密

审查生成代码

始终审查 Copilot 生成的代码:

  • 检查逻辑正确性
  • 验证边界情况
  • 确认安全性
  • 测试功能

常见用例

生成样板代码

编写正则表达式

实现算法

生成 API 请求

编写测试

describe('formatDate', () => {
});

隐私和安全

代码隐私

  • 代码片段发送到 GitHub 进行处理
  • 不用于训练模型(企业版)
  • 可以配置排除特定文件

配置排除

创建 .copilotignore 文件:

secrets/
*.env
credentials.json
private/

禁用特定语言

{
"github.copilot.enable": {
"python": false
}
}

定价

版本价格适用场景
Individual$10/月个人开发者
Business$19/月/用户团队协作
Enterprise$39/月/用户企业级功能

学生、开源项目维护者可免费使用。

参考资源