Skip to content

在工作中使用 AI

什么是 GitHub Copilot

GitHub Copilot

GitHub Copilot 是由 GitHub 与 OpenAI 联合开发的 AI 编程助手,它能够理解自然语言描述,并基于当前项目上下文生成相应代码片段。Copilot 支持多语言、多框架,既可以生成简单函数,也可以辅助完成复杂逻辑。

Copilot 示例

Copilot 的优势

  • 提高生产力:减少重复性工作,让你专注于核心逻辑。
  • 提升代码质量:提供一致、可读的实现方案。
  • 学习利器:通过示例快速上手新语言或新框架。
  • 加速验证想法:快速生成原型和概念验证代码。

核心能力(功能一览)

1. 基于项目上下文的智能建议

  • 根据注释生成代码实现。
  • 自动补全重复性的“胶水”代码,如循环、类型声明等。
  • 提供多种实现方式供选择。

智能建议

2. 多候选建议(Alternative Suggestions)

对于同一个输入,Copilot 可以提供多个候选方案。你可以浏览、选择某一个建议,也可以全部拒绝并继续手动编写。

3. 代码解释

当遇到不太理解的代码段时,Copilot 可以给出逐行解释,帮助你快速看懂逻辑并提高可读性。

代码解释

4. 自动生成测试用例

根据现有函数签名或逻辑,Copilot 能生成对应的单元测试代码,节省编写测试的时间。

5. 在终端中执行命令(Copilot Chat + @terminal)

如果忘记某条命令的用法,可以在 VS Code 的 Copilot Chat 中使用 @terminal,让 Copilot 帮你生成命令并一键插入终端执行。

6. 生成提交信息

在 Source Control 面板中,点击“闪电”图标(⚡),Copilot 会根据改动自动生成高质量的提交说明文本。

7. 修复代码问题

遇到报错或红线时,可以让 Copilot 帮你定位问题并给出修复建议。

8. 自动生成注释与文档

让 Copilot 为函数、类、模块生成易读的注释,提升团队协作效率。

9. 终端错误消息解释

在终端中选中错误消息,右键选择“解释”,Copilot 会给出错误含义与修复建议,减少自行排查的时间。


让 Copilot 更给力的使用方式

1. 聚焦上下文

文件层面

  • 保持相关文件打开:Copilot 会读取当前打开文件的上下文信息来做建议。
  • 使用 @workspace 代理:让 Copilot 可以访问整个工作区的内容。

代码层面

  • 提供清晰的顶部注释:在文件或模块开头说明模块用途,让 Copilot 更准确理解期望。
  • 使用有意义的命名:合理的变量、函数、类型名能让 Copilot 更好地猜测意图。
  • 编写明确的函数注释:清晰描述参数含义和预期行为。

提问层面

  • 提供示例代码:通过示例让 Copilot 更快理解你的期望。
  • 删除无关内容:避免在对话中混入与当前问题无关的信息。
  • 用主题组织对话:为不同问题建立不同主题、分段讨论。
  • 手动设置包含/引用:明确依赖关系,避免 Copilot 生成的内容与项目结构脱节。

2. 提高效率的小技巧

  • 使用内联聊天(Copilot Chat):遇到问题时直接在编辑器里问,效率更高。
  • 先选中相关代码再提问:让 Copilot 能看到明确上下文。
  • 使用斜杠命令(例如 /explain, /fix, /tests)快速完成常见任务。
  • 附上相关文件:当问题牵涉多个文件时,把它们一起发给 Copilot。
  • 调试时优先用 Copilot Chat:快速定位错误并获取修复建议。

需求实践示例

1. Vue 项目:自动引入 refcomputed

目标:在 .vue 文件中使用 ref / computed 时无需手动 import,让 IDE/构建工具自动补全导入。

你可以通过(例如)在项目中配置相关插件或脚本,让 Copilot 帮你生成对应配置,并直接给出实现方案。

2. 参数定义脚本自动生成(JSON Schema → Pinia)

示例场景:把一个 JSON Schema 转为 Pinia store 的 use-task-store,并用 ref 定义状态参数。

指令如下:解析以下 json-schema,使用 Pinia 生成 use-task-store,使用 ref 定义,并导出定义的参数:

json-schema 示例

将刚刚复制的 JSON 写好描述词放入 prompt 中,这种简单的体力劳动可以交给 AI 来做:

AI 生成示例

3. 从需求到完整项目的流程

  1. 描述需求。
  2. 让 Copilot 生成初始工作区结构。
  3. 逐步修复出现的问题。
  4. 安装依赖并运行测试。

这个流程适合快速原型验证和学习新技术栈。