AI 编程助手写得很快,也错得很快。想让它真正提高效率,关键不在于它多聪明,而在于你给它搭好了护栏:能回滚、看得懂、测得出来。
1. 用版本控制,小步提交
让 AI 改动文件之前,先把当前状态提交一次。这样不管它改成什么样,都能一条命令回到原点。每完成一个小目标就提交一次,提交信息写清楚,出了问题可以精确定位是哪一步引入的。
2. 先让它说计划,再动手
复杂的修改,先请它列出打算怎么做、会改哪些文件,你确认后再执行。方向错了,在计划阶段纠正的成本最低。
3. 给足上下文,限定范围
说清楚要改哪个文件、哪个函数,期望的行为是什么,有哪些不能动的部分。「把整个项目重构一下」几乎一定会带来大量你不想要的改动;「只修改这个函数,保持对外接口不变」则可控得多。
4. 读懂每一处改动
合并之前,逐段阅读差异(diff)。看不懂的地方,请它解释原因;解释不通的,就不要合并。你对代码负责,而不是 AI。
5. 让测试说话
- 修复缺陷时,先让它写一个能复现问题的测试,再修改代码让测试通过。
- 新增功能时,要求它同时给出测试。
- 测试失败时,把完整的报错信息贴回去,而不是只说「不行」。
6. 别把密钥和隐私数据交给它
不要让助手读取含有密钥的文件,贴日志前先脱敏。提交前检查改动里是否混入了密钥、令牌和个人数据。更完整的做法见API Key 安全使用清单。
7. 核对它引入的依赖
AI 有时会推荐一个根本不存在的软件包,名字听起来很合理。这很危险:有人会专门注册这类名字并放入恶意代码。添加依赖前,确认它确实存在、维护活跃、下载量合理、来源是官方仓库,并使用锁文件固定版本。
提交前检查清单
- 我读过全部的改动,并且看得懂。
- 测试已经运行,并且通过。
- 改动里没有密钥、令牌和个人信息。
- 新增的依赖都是真实、可信的。
- 提交信息说明了为什么这样改,而不只是改了什么。
这些习惯对人写的代码同样有效。AI 只是把「写」变快了,「看」和「验」仍然需要你。关于怎样核查它的输出,可以参考如何核查 AI 的回答。