前言
作为一个程序员,你一定经历过这样的场景:
代码写完了,git add . 敲完了,然后...对着 git commit -m "" 的光标发呆。
"这次改了啥来着?"
"算了,先写个 fix"
"update"
"."
"fix bug"
"asdfghjkl"
翻看 Git 历史,全是这样的提交信息:
fix
fix bug
update
修复
1111
啊啊啊啊啊
三个月后回来看代码,完全不知道当时改了什么。
所以我做了个小工具:git-ai-cli, 彻底告别这个痛苦。
git-ai-cli 的特性
✅ 支持 10+ 大模型
国产大模型(推荐):
| 服务商 | 模型 | 特点 |
|----------|----------------|----------------|
| DeepSeek | deepseek-chat | 便宜好用,推荐 |
| 通义千问 | qwen-turbo | 阿里云,稳定 |
| 智谱 GLM | glm-4-flash | 速度快 |
| Moonshot | moonshot-v1-8k | Kimi 同款 |
| 百川 | Baichuan4 | - |
| 零一万物 | yi-lightning | - |
国际大模型:
- OpenAI (gpt-4o-mini)
- SiliconFlow 硅基流动
本地部署(隐私优先):
- Ollama
- LM Studio
✅ 交互式操作
生成后不会直接提交,而是让你选择:
- 🚀 Commit:满意,直接提交
- 📝 Edit:微调一下再提交
- 🔄 Regenerate:不满意,重新生成
- ❌ Cancel:算了,不提交了
✅ 智能 Diff 处理
自动过滤这些没意义的文件,节省 Token:
- package-lock.json、yarn.lock 等 lock 文件
- .min.js、.map 等压缩/映射文件
- dist/、build/ 等构建产物
如果 diff 太长,会自动截断到 5000 字符,避免超出模型限制。
✅ Conventional Commits 规范
生成的 commit message 遵循标准格式:
():
feat: 新功能
fix: 修复 bug
docs: 文档更新
refactor: 重构
test: 测试相关
chore: 构建/工具链
再也不用纠结 commit 怎么写了。
这个工具解决了我每天的一个小痛点,希望也能帮到你。
GitHub 地址:github.com/dongowu/git…
如果觉得有用:
- 给个 Star ⭐️ 支持一下
- 有问题欢迎提 Issue
- 欢迎 PR 贡献代码
你平时是怎么写 commit message 的?欢迎在评论区分享~