Git提交信息太乱?AI一键美化!一行命令拯救你的项目历史🚀

发现了一个 git-rewrite-commits 的仓库,目前 1.1k 🌟

可以使用 ai 来重写已经提交的 git commit 信息,修改后需要强制提交

这对于之前 git commit 信息写的乱七八糟的项目,又不想手动改,现在一行命令就能解决这个问题!

写这个文章的原因是 git-rewrite-commits 我觉得她这个使用说明写的不是很好懂,但还是建议阅读下!

准备工作

可以使用 OpenAI GPT 或本地 Ollama 模型进行 AI 驱动的提交信息生成

这里我们使用 Ollama 模型进行 AI 驱动的提交信息生成

首先你需要安装 Ollama 猛击参考官方文档安装

然后 Ollama 现在有一个 Cloud 云模型,大概就是使用 Ollama 调用云端模型达成和本地运行一样的效果。

运行云模型需要一个 ollama.com 上的账户,执行 ollama signin 登录或创建账户,登录完成后点击头像->设置,可以看到限额情况

云模型后边会有标识

开始使用

bash 复制代码
npx git-rewrite-commits --provider ollama --model qwen3-coder:480b-cloud --min-quality-score 10 --language zh --verbose
参数 简写 作用说明
--provider ollama 指定 AI 服务提供商,选择使用本地运行的 Ollama 服务处理请求
--model -m qwen3-coder:480b-cloud 指定使用的 AI 模型名称,此处为 Qwen3 Coder 云端版本
--min-quality-score 10 设置质量评分阈值,提交评分低于此值的将被重写,设置为 10 表示强制重写所有提交
--language -l zh 设置生成提交信息的语言,此处为中文(简体)
--verbose -v 无(标志参数) 启用详细输出模式,显示处理过程中的详细信息、评分结果、AI 响应内容等

其他还有一个参数可以执行 npx git-rewrite-commits --help 查看

以我的 blog 项目为例

  1. 输入 y 确认

  2. 开始执行

  3. 执行结束会让你确认是否重写 git commit 记录,输入 y 确认后开始执行

  4. 重写完成后会提示你需要强制推送 翻译一下:

    1. 查看更改:git log --oneline
    2. 如果满意,强制推送:git push --force-with-lease
    3. 如果出现问题,恢复:git reset --hard backup-main-1765263878856
    4. 完成后清理备份:git branch -D backup-main-176526387885
  5. 执行 git push --force-with-lease 开始强制推送 没有权限会有这种提示,修改仓库推送权限后重新推送即可

总结

git-rewrite-commits 是一个可以使用 ai 来重写已经提交的 git commit 信息的工具,对于之前项目中 git 提交信息不规范又不想手动去修改时,可以通过一行命令解决,十分方便!

相关推荐
潘小安2 小时前
《5-Day AI Agents Intensive》- 认识 Agents
agent·ai编程·trae
Light603 小时前
CSS逻辑革命:原生if()函数如何重塑我们的样式编写思维
前端·css·响应式设计·组件化开发·css if函数·声明式ui·现代css
蜡笔小嘟4 小时前
宝塔安装dify,更新最新版本--代码版
前端·ai编程·dify
ModyQyW5 小时前
HBuilderX 4.87 无法正常读取 macOS 环境配置的解决方案
前端·uni-app
bitbitDown5 小时前
我的2025年终总结
前端
五颜六色的黑5 小时前
vue3+elementPlus实现循环列表内容超出时展开收起功能
前端·javascript·vue.js
wscats6 小时前
Markdown 编辑器技术调研
前端·人工智能·markdown
EnoYao6 小时前
Markdown 编辑器技术调研
前端·javascript·人工智能
JIngJaneIL6 小时前
基于java+ vue医院管理系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js·spring boot
JIngJaneIL6 小时前
基于java + vue校园跑腿便利平台系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js·spring boot