CodeRoadMap
首页路线题库资源库文章社区
CodeRoadMap

程序员的学习成长路线图。内容免费开放,登录后可同步路线图与课时进度。

由 程序员柏风 独立维护 · 关于作者

学习

  • 路线图
  • 课程
  • 面试题
  • 文章
  • 我

更多

  • 资源
  • 社区
  • 关于作者
  • 内容说明

© 2026 CodeRoadMap

津ICP备2026012044号-1·津公网安备12011002026155号·coderoadmap@126.com
Vibe Coding 实战入门/课时/Copilot 与 Gemini
RawBlame
课时目录12 节

Vibe Coding 实战入门

  1. 01Vibe Coding 是什么
  2. 02先规划再编码
  3. 03Cursor 与 Windsurf
  4. 04Claude Code 与 Codex
  5. 05Copilot 与 Gemini
  6. 06v0 与 Lovable
  7. 07技术栈选择
  8. 08提示与上下文
  9. 09调试
  10. 10版本控制
  11. 11测试
  12. 12安全

Copilot 与 Gemini

补全与多模型。

25 分钟

Copilot 与 Gemini

这一课你将能做到

  1. 用 GitHub Copilot 的 Inline 补全、Chat、Agent 三种模式覆盖不同开发场景
  2. 用 instruction 文件给 Copilot 注入项目约定
  3. 说清楚 Gemini 在 AI 编程版图中的位置和适用场景

为什么要学

GitHub Copilot 是装机量最大的 AI 编程工具——它直接长在你已有的 IDE 里(VS Code、JetBrains、Visual Studio、Neovim),不用换编辑器,几乎没有迁移成本。对企业来说,它背靠 GitHub/微软,采购和合规路径最短,很多公司第一个被批准的 AI 工具就是它。

Gemini 是 Google 的大模型,通过 Android Studio 内置、Gemini Code Assist 插件、以及 CLI 工具进入开发流程,其超长上下文窗口(百万级 token)在「读超大代码库」场景有独特优势。

人话:如果 Cursor 是「为 AI 重做的编辑器」,Copilot 就是「给现有编辑器装 AI 插件」。前者体验更深,后者阻力最小。真实团队选型往往不看你最喜欢哪个,而看公司能批哪个——所以两个都得会。

先建立图像

Copilot 三种工作模式:
┌──────────────────────────────────────────┐
│ Inline 补全:打字时灰色预测,Tab 接受      │ ← 高频、轻量
│ Chat(Ctrl+Alt+I):侧边栏问答,可带文件   │ ← 中频、理解/生成
│ Agent 模式:跨文件改动+跑命令              │ ← 低频、完整任务
└──────────────────────────────────────────┘

Gemini 入口:
Android Studio 内置 / VS Code 插件 / Gemini CLI(终端)

跟着做

步骤 1:安装并确认三种模式可用

VS Code 里安装 GitHub Copilot 扩展,登录 GitHub 账号(需订阅,有免费额度)。确认:

  • 打开任意 .java 文件,输入注释 // 按创建时间倒序查询文章列表,回车看是否出现灰色补全(Inline 模式)
  • 按 Ctrl+Alt+I 打开 Chat 面板
  • Chat 输入框左下角可切换 Ask / Edit / Agent 模式

步骤 2:用 Inline 补全的正确姿势

Inline 不是「AI 帮你写」,是「AI 猜你下一步」。高效用法:

// 先写好方法签名和注释,让补全有方向
/**
 * 查询某标签下的置顶文章
 * @param tagId 标签 id
 * @return 置顶文章列表,按创建时间倒序
 */
public List<Article> listTopByTag(Long tagId) {
    // 停在这里,Copilot 会基于注释+上下文补全实现
}

上下文来源:当前文件、打开的标签页、相似代码片段。所以打开相关文件会显著提升补全质量——写 Mapper 前先把对应 entity 打开。

步骤 3:用 Chat 做代码理解

选中一段看不懂的老代码,在 Chat 里问:

解释选中代码的逻辑,特别注意第 23 行的空指针风险

或引用整个文件(输入 # 引用文件,或把文件拖入 Chat):

#OrderService.java 这个类里哪些方法有事务问题?

步骤 4:配置项目级指令

创建 .github/copilot-instructions.md(Copilot 自动读取的项目约定文件):

# 项目约定
- Java 17 + Spring Boot 3 + MyBatis-Plus
- 统一返回 Result<T>,不要直接返回 entity
- 异常用 BusinessException,不要裸抛 RuntimeException
- 测试用 JUnit 5 + Mockito

这是 Copilot 版的「rules」,所有 Chat 和补全都会受影响。

步骤 5:用 Agent 模式完成一个小任务

Chat 切到 Agent 模式,输入:

给 ArticleController 的列表接口加分页参数校验:
page 最小 1,size 最大 100,超出范围抛 BusinessException。
同时更新对应的单元测试。

Agent 会自己改代码、创建/更新测试、跑测试验证。完成后逐个文件审查 diff。

步骤 6:体验 Gemini 的超长上下文

安装 Gemini Code Assist 插件(或用 Gemini CLI),它的差异化场景是超大上下文。验证方式:把一个几十万行项目的多个核心文件一次性喂给它,问架构问题:

基于这些文件,画出订单从创建到履约的完整状态流转,
指出状态机里可能遗漏的异常分支。

普通工具上下文装不下的分析任务,Gemini 的百万 token 窗口能装下。

讲清楚要点

  1. 三种模式分工:Inline 处理「手比脑慢」的重复输入;Chat 处理理解和问答;Agent 处理跨文件完整任务。按任务粒度选模式,别用 Agent 干 Inline 的活(重),也别用 Chat 干 Agent 的活(得自己搬运)。
  2. 上下文质量决定一切:打开相关文件、写好注释和签名、# 引用文件,都是在给 AI 递弹药。抱怨补全质量差之前,先检查上下文给够没有。
  3. .github/copilot-instructions.md 必须进 Git:团队共用一份约定,新人 clone 下来 AI 就懂规矩。
  4. Copilot 的企业优势在合规:企业版承诺代码不用于训练,有 IP 侵权赔偿条款,这是它在采购流程中赢过新兴工具的关键。
  5. Gemini 的差异化是上下文长度:不是「更好的 Cursor 替代品」,而是超大代码库分析、长文档理解的专用武器。

你可能会懵的地方

  • Copilot 免费版够不够用? 有月度补全和 Chat 额度限制,个人学习够用;团队开发上 Pro/Business。具体额度以 GitHub 官网当时政策为准。

  • Copilot 和 Cursor 能同时用吗? 技术上可以(Cursor 是 VS Code fork,能装 Copilot 扩展),但补全会打架,建议在一个编辑器里只开一个补全来源。

  • Gemini CLI 和 Claude Code 是不是一类东西? 是,都是终端 Agent。Gemini CLI 免费额度慷慨、上下文大;Claude Code 在工具链集成和代码任务完成率上口碑更稳。按任务试,别信仰式站队。

  • Copilot 的补全为什么有时候很蠢? 它主要看「当前文件+打开的 tabs」。文件刚建、上下文空白时它只能瞎猜。写两行、开几个相关文件,质量立刻上来。

  • 公司不让代码出站,怎么办? Copilot Business 可关遥测且不用代码训练;更严格的场景用内网部署的开源模型方案(如通过 Ollama/私有网关接入)。选型时把「代码数据流向」作为第一评估项。

错法对照

错法问题正解
空白文件等补全无上下文,质量随机先写注释和签名,给 AI 锚点
补全一路 Tab 到底小错累积成大坑每接受一段扫一眼逻辑
Chat 里口头重复约定下个会话失效写进 copilot-instructions.md
用 Chat 手动搬运多文件改动容易漏改、贴错改用 Agent 模式自动落盘
迷信单一工具场景错配效率低按任务选工具,允许多工具共存

卡点急救

  1. 补全不出现:检查右下角 Copilot 图标状态;确认当前文件类型没被禁用;大文件/网络差时延迟正常,等一秒。
  2. Chat 回答文不对题:没用 # 引用文件,它不知道你在说哪段代码。把相关文件拖进 Chat 再重问。
  3. Agent 模式改了不该改的文件:在 prompt 里明确「只允许修改 X 目录下的文件」;完成后 git diff --stat 检查改动面是否符合预期。

面试常问

  • 如何在团队推广 Copilot 并量化收益? 高分回答:先试点小组用 2-4 周,指标看「接受率、PR 周期时间、返工率」;配套建设 instructions 文件和规范培训;注意「代码量提升」不等于「价值提升」,最终看交付周期和缺陷率。

  • Copilot 生成的代码涉及开源协议风险吗? 有「代码建议与公开代码高度相似」的可能。Copilot 提供「阻止匹配公开代码」的开关,企业版含 IP 赔偿条款;团队层面要求对所有 AI 生成代码做 license 扫描。

  • Gemini 的超长上下文什么时候真正有用? 整体架构分析、跨模块影响面评估、大型重构前的依赖梳理——需要「同时看到大量代码」的场景。日常补全和单文件生成用不上这个优势。

自测三问

  1. Copilot 的 Inline、Chat、Agent 三种模式分别适合什么粒度的任务?
  2. .github/copilot-instructions.md 解决什么问题?
  3. Gemini 在 AI 编程工具版图中的差异化优势是什么?什么场景该用它?

小结一句话

Copilot 是阻力最小的企业级 AI 编程入口,Gemini 是超长上下文的特种部队——会用三种模式,懂各自边界,才算真正上手。

延伸

  • GitHub Copilot 官方文档
  • Gemini Code Assist 文档
  • 下一课:v0 与 Lovable——用 AI 生成 UI 的正确姿势。
加载本节练习…
← 上一课Claude Code 与 Codex下一课 →v0 与 Lovable