探索 GitHub Copilot:当 AI 成为你的贴身编码助手
解锁 GitHub Copilot 的正确用法,提升开辟服从,开源贡献者还能免费申请使用资格。阅读原文请转到:https://jimmysong.io/blog/mastering-github-copilot-for-open-source/
过去一年中,我一直享有 GitHub Copilot 的免费使用资格,但是由于种种原因,我并没有深入地使用它。近来看到了 GitHub 官方发布的一篇关于 Copilot 的博客《Mastering GitHub Copilot: When to use AI agent mode》,让我对如何更好地使用 Copilot 有了新的灵感和思考。
在这篇文章里,我想和大家分享一下我对 Copilot 强大功能的明确,尤其是 Copilot Edits 和 Agent Mode 这两个模式之间的差异和使用场景。末了,我还想呼吁所有开源项目的贡献者:假如你符合条件,一定要去积极申请 Copilot 免费使用资格,让自己的开辟服从更上一个台阶!
为什么你的 AI 辅助写码好像“不给力”?
大多数开辟者在接触 AI 辅助编码工具(好比 GitHub Copilot)时,都会或多或少地碰到一些状况,好比:
[*]• 生成的代码和你所需的功能“差那么一点”;
[*]• 必要在多个文件间跳来跳去修改,却希望 AI 能自动帮忙“通盘思量”。
其实,这些小波折往往不在于工具本身,而在于你是否找对了使用方式。GitHub Copilot 内部包含多个偏重点各不相同的功能,它们各自得当在差异的情形下使用。正确地选择合适的功能,就是解锁 Copilot 真正实力的关键。
Copilot Edits:快速精确的“微调”
什么时间用它?
[*]• 小范围的修复:修复一个函数的 bug。
[*]• 重构特定模块:给函数或组件做局部优化。
[*]• 做跨文件的同等性改动:例如同一日志打印格式,或者同一变量命名方式。
Copilot Edits 的功能就像是给你配备了一个能读懂上下文的“超等编辑器”。你可以快速发出下令,让它在有限范围内对现有代码进行改动,并在提交前查察 diff,随时保持对改动的掌控。
Agent Mode:你的“多文件大管家”
与 Copilot Edits 相比,Agent Mode 更像是一个能够宏观统筹全局的 AI 助手。它不只是在一个文件里给你提发起,更可以去你的整个项目里做深度搜刮、自动找出依赖关系、创建或修改多个文件,甚至可以帮你在终端里运行下令、编译、测试项目等。
得当的使用场景
[*]1. 构建完整功能:如“为应用添加全局的事件跟踪”。
[*]2. 明确和浏览陌生项目:如“帮我搞懂这个项目里认证系统是怎么运作的”。
[*]3. 整合测试:如“为 UserService 写测试并确保全部通过”。
[*]4. 必要运行大量终端操作:如“创建新的 React + TS + Redux + styled-components 项目”。
[*]5. 复杂的重构:如“同一替换所有 API 调用并加入新的错误处理逻辑”。
我在个人网站上的应用场景
博主(也就是我)在给个人网站的 GitHub Action 中增加一个更新索引文件的工作,可以告诉 Copilot Agent:
“给我的 GitHub Action 中增加一个更新 search index 的任务并在本地测试”
然后 Copilot Agent 会扫描我的代码库,聪明地在我的 GitHub Action 配置文件中帮我插入相应的任务,并会自动的安装依赖软件并运行测试。
https://i-blog.csdnimg.cn/img_convert/3cf30f83a7c7120c3392e652a4bff9d1.jpeg VS Code 中的 Copilot Action 这就是 Agent Mode 的强大之处,它可以一次性处理全局级别的改动,真正让 AI 成为你的“对等”开辟伙伴。
核心上风
[*]• 自动检索整个代码库:不消手动定位所有干系文件。
[*]• 自我迭代:可以一次性迭代和修复自己生成的代码。
[*]• 终端下令执行:在得到你授权后,会自动跑下令、编译或测试。
[*]• 维持整体架构同等:在改动时会思量跨文件依赖关系,淘汰顾此失彼的风险。
Chat 窗口:你的“Copilot 指挥中心”
无论你是想使用 Copilot Edits 照旧 Agent Mode,你都会用到 VS Code 里的 Copilot Chat 窗口:
[*]1. 提问常规技能题目,好比:“如安在 Node.js 中实现 JWT 认证?”
[*]2. 使用 /explain 明确复杂代码片段。
[*]3. 使用 /fix 让 Copilot 帮你调试。
[*]4. 使用 /tests 为给定代码自动生成测试用例。
[*]5. 随时在 Edits 和 Agent Mode 之间切换。
记住:你提供的上下文信息越完整,Copilot 生成的回答就越正确。请不要吝啬给它多一些提示!
二者并不冲突——混合使用才是王道
原文中强调了一点:Copilot Edits 和 Agent Mode 并不是二选一的对立关系,而是相辅相成。
[*]• 当你必要快速修复和微调时,选 Copilot Edits;
[*]• 当你必要做多文件改动、增加大型功能模块或跑终端下令等,启用 Agent Mode。
AI 只是辅助,我们才是项目的主导者,无论在任何模式下,你都随时拥有终极的决定权。与 AI 协作的关键是:在发起需求时确保“意图”足够清晰,并在生成代码后自行进行须要的查察和测试。
如何开启 Copilot Edits 和 Agent Mode
Copilot Edits
[*]1. 在 VS Code 中打开 Copilot Chat 窗口。
[*]2. 点击「Edit with Copilot」按钮,进入 Edits 视图。
[*]3. 把必要修改的文件加入工作集(working set),未纳入工作集的文件默认不会被修改。
[*]4. 向 Copilot 发出修改需求,好比“请把用户验证逻辑改成基于 JWT 的方式,并把干系函数命名同一为 verifyUserToken”。
[*]5. 接受修改前,一定要查察 diff,确认无误后再点「接受更改」。
Agent Mode
[*]1. 需使用 VS Code 1.99 或更高版本。
[*]2. 在 Copilot Chat 中将模式切换为「Agent」。
[*]3. 描述你想实现的复杂功能,例如“创建一个带有打字机动画、上下下令历史、tab 补全、主题切换功能的 Terminal 界面。”
[*]4. Copilot 会在后端自动迭代并提出改动发起,你必要对每一步改动进行审核并决定是否执行。
[*]5. 如需个性化定制,可在 VS Code 中针对工程的特定需求编写自定义提示(custom instructions)。
招呼:开源贡献者可免费使用 GitHub Copilot
在国表里,你的个人和团队假如对开源社区有贡献——好比在 GitHub 上维护或积极到场开源项目,就偶尔机免费申请 GitHub Copilot,这对进步工作服从、让团队更专注于关键业务逻辑而言非常有资助。
申请地点(Copilot for Open Source)
发起把你的 GitHub Profile、开源项目链接、贡献度、Stars 等信息准备好,申请通过后就可以体验到 Copilot 的强大功能。
别担心! 只要你确实为开源生态做出过贡献,GitHub 官方是很鼓励你去申请 Copilot 的免费使用资格的。必要留意的是该免费资格是按月赋予的!
结语:拥抱 AI 工具,让开辟更高效
从最初的 GitHub Copilot 到现在徐徐涌现的各种 AI 编程工具,好比 Cursor、Amazon CodeWhisperer、Google Gemini Code Assist、以及基于大语言模型的各种插件等等,AI 编程助手已经不再是新鲜事。Cursor 的特点在于提供雷同 IDE 的环境,可直接在其编辑器里集成对话式的 AI 辅助;Replit 的 Ghostwriter 则充实利用 Replit 在线编程环境的上风,为多人协作和及时预览提供极大方便。和 Copilot 相比,这些工具可能在对话交互深度、代码质量、或对特定语言和生态的支持范围上各有所长。但总体而言,它们都在让开辟者摆脱那些冗杂、重复、机械的编程工作,从而腾出更多时间和精力进行架构和创新。
“AI 不会取代程序员,但会取代那些拒绝与 AI 合作的程序员。”
假如你正在或即将投入开源项目的开辟,或者在贸易项目中想要挖掘更多高阶生产力,都保举你去尝试并深入学习这些 AI 编程工具。在 GitHub 官方文档 中,你还可以找到一份从入门到进阶的 Copilot 教程系列——从最初的安装到高级用法,让你快速掌握 Copilot 的精华。也欢迎试用其他同类工具,对比各种功能优缺点,探索得当自己团队的工作流。
让我们一起拥抱 AI,做更高效的开辟者吧!
假如你对 AI 编程、云原生和开源技能感兴趣,也欢迎访问我的个人博客 jimmysong.io,一起交流讨论。祝大家编码愉快,服从倍增!
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页:
[1]