找回密码
立即注册
搜索
热搜: Java Python Linux Go
发回帖 发新帖

1009

积分

0

好友

131

主题
发表于 3 天前 | 查看: 8| 回复: 0

git-rewrite-commits 是一个开源工具,它利用AI能力自动重写Git仓库中已提交的Commit信息,目前已在GitHub上获得了超过1.2k的Star。

开源项目地址:
https://github.com/f/git-rewrite-commits

工具核心功能示意图

该工具的核心功能是使用AI模型重新生成清晰、规范的Git提交信息。修改完成后,需要执行强制推送来更新仓库历史。这对于那些因历史提交信息杂乱而难以维护的项目来说非常实用,无需手动逐条修改,仅需一行命令即可自动化完成整理工作。

下文将详细介绍其使用方法。尽管项目自身提供了文档,但为了更清晰地上手,我们整理了以下实践指南。

准备工作:选择AI模型

该工具支持使用OpenAI GPT API或本地的Ollama模型来驱动提交信息的生成。本文将演示如何使用本地Ollama模型来完成这一任务。

首先,你需要安装Ollama。具体安装步骤请参考其官方文档:
https://docs.ollama.com/quickstart

此外,Ollama提供了“Cloud”云模型服务,允许你通过本地Ollama客户端调用云端的高性能模型,获得与本地运行相似的使用体验。

要使用云模型,你需要一个在 ollama.com 上的账户。在终端执行 ollama signin 命令进行登录或注册。登录后,在网站头像->设置页面,可以查看云模型的使用额度。

Ollama云模型设置页面

在模型列表中,云模型会有特殊的标识。

云模型列表标识

开始使用

在需要进行Git提交信息重写的仓库根目录下,执行以下命令:

npx git-rewrite-commits --provider ollama --model qwen3-coder:480b-cloud --min-quality-score 10 --language zh --verbose

命令执行示例

你可以通过执行 npx git-rewrite-commits --help 来查看所有可用参数。

下面以一个博客项目为例,演示完整流程:

1. 确认执行
命令运行后,工具会列出将要被重写的提交,并请求确认。输入 y 继续。
确认操作截图

2. AI生成过程
工具开始调用Ollama模型,为每一个历史提交生成新的、更规范的提交信息。
AI生成过程截图

3. 确认重写
所有新信息生成完毕后,工具会再次询问是否执行重写操作。输入 y 确认后,它将开始实际修改本地的Git历史。
确认重写截图

4. 完成与提示
重写完成后,工具会给出明确的后续操作指引,并自动创建一个备份分支以防万一。
完成提示截图

提示信息翻译如下:

  • 查看更改git log --oneline
  • 如果满意,强制推送git push --force-with-lease
  • 如果出现问题,恢复git reset --hard backup-main-1765263878856
  • 完成后清理备份git branch -D backup-main-176526387885

5. 强制推送更新远程仓库
执行 git push --force-with-lease 将重写后的历史推送到远程仓库。
强制推送截图
如果遇到权限错误,请检查仓库设置,确保允许强制推送,然后重试。

总结

git-rewrite-commits 是一款高效的DevOps工具,它通过集成人工智能模型,自动化地解决了Git项目历史提交信息不规范的问题。对于希望提升代码仓库可读性和维护性,但又不想投入大量时间手动修改的开发者而言,通过一行简单的命令行即可实现批量优化,非常便捷。


来源:juejin.cn/post/7581428845683179563




上一篇:基于Docker在NAS部署多人联机RPG游戏:BrowserQuest服务器搭建与体验
下一篇:Spring Boot集成OpenTelemetry实践:实现微服务链路追踪与监控
您需要登录后才可以回帖 登录 | 立即注册

手机版|小黑屋|网站地图|云栈社区 ( 苏ICP备2022046150号-2 )

GMT+8, 2025-12-17 17:36 , Processed in 0.109708 second(s), 40 queries , Gzip On.

Powered by Discuz! X3.5

© 2025-2025 云栈社区.

快速回复 返回顶部 返回列表