GIM 发布新版本了!现在1.3.0版本可用了 https://github.com/davelet/git-intelligence-message/releases/tag/v1.3.0。可以通过brew upgrade git-intelligence-message
升级。
初次安装需要先执行
brew tap davelet/gim
GIM 是一个根据git仓库内文件变更自动生成git提交消息的命令行工具,参考前文《GIM: 根据代码变更自动生成git提交消息的工具》。
在最近的版本中主要三个新能力:
- 不再依赖rust而是安装二进制包
- 自动探测新版本并提示更新
- 用户可自主调整生成提示(AI prompt)
此外还内置了更多大模型的 API 调用地址。
二进制安装
GIM 现在不依赖 rust 环境了,改为通过brew bottle
安装了。即下即用,不用编译安装,立刻节省5G磁盘。
为了保证效果,推荐重装:
brew uninstall git-intelligence-messagebrew cleanupbrew updatebrew install git-intelligence-message
升级 GIM 版本
软件执行时会主动探测是否有新版本。发现后(会有提示)可以执行
gim update
来升级。如果提示了5次依然没升级则一个月内不会再提示。
调整AI提示词
可以自主设置提示词了。通过命令gim prompt
查看默认提示词,通过gim prompt -e
可进行提示词更新。
完整命令可参考项目文档https://github.com/davelet/git-intelligence-message/blob/main/README.md或者帮助文档:
gim prompt -hManage ai model prompt files. Show content when no options specifiedUsage: gim prompt [OPTIONS]Options: -e, --edit Optional: Edit the prompt files -t, --prompt <PROMPT> Optional: Specify which prompt to edit (d or diff or diff_prompt or subject_prompt) -o, --editor <EDITOR> Optional: Specify the editor to use (e.g., vim, code, nano) -h, --help Print help
内置大模型地址清单
现在内置了一下8中大模型的API地址:
Model Prefix | Service Provider | Default Endpoint |
---|---|---|
gpt-* | OpenAI | https://api.openai.com/v1/chat/completions |
moonshot-* | Moonshot AI | https://api.moonshot.cn/v1/chat/completions |
qwen-* | Alibaba Qwen | https://dashscope.aliyuncs.com/compatible-mode/v1/chat/completions |
gemini-* | Google Gemini | https://generativelanguage.googleapis.com/v1beta/openai/ |
doubao-* | ByteDance Doubao | https://ark.cn-beijing.volces.com/api/v3/chat/completions |
glm-* | THUDM GLM | https://open.bigmodel.cn/api/paas/v4/chat/completions |
deepseek-* | DeepSeek | https://api.deepseek.com/chat/completions |
qianfan-* | Baidu Qianfan | https://qianfan.baidubce.com/v2/chat/completions |
所以如果你要用的模型是在这清单里可以不用使用gim ai --url
来配置。
使用流程
- 通过homebrew安装
- 设置大模型token参考
gim ai -h
- 切换目录到某个git 仓库
- 执行
gim -a
(这就是GIM提供的核心能力) - (可选)执行
git push
推送提交
bottle 制作流程
1. 新建 tap 分支
我给https://github.com/davelet/homebrew-gim拉了新分支dep-cargo-install
。这个分支保持通过cargo 安装。main
分支后续更新成bottle安装方式,供用户使用。
2. 本地使用 tap 新分支
有多种方式切换分支,最直观的是
cd"$(brew --repo davelet/gim)"git checkout dep-cargo-installgit pullbrew install --build-bottle davelet/gim/git-intelligence-message
这样会通过新分支的旧方式安装软件。
必须指定参数 --build-bottle 告诉 brew 这个软件要用来制作bottle
3. 制作 bottle
找个目录执行
brew bottle git-intelligence-message
会在当前目录生成一个bottle文件(结尾是bottle.1.tar.gz
)并提示一段代码:
bottle do rebuild 1 sha256 cellar: :any_skip_relocation, sonoma:"b478f239a65b704c85cc59b1a50fcde797bbbf9c142972c08f529e5bea3f5b7a" end
4. 上传文件
把上一步生成的文件重命名,里面的--
改成-
,上传到仓库的Release里面,比如
https://github.com/davelet/git-intelligence-message/releases/tag/v1.2.2
把上传好的文件链接复制出来。
5. 更新 Formulae
最后一步,回到 tap 主分支 https://github.com/davelet/homebrew-gim/blob/main/Formula/git-intelligence-message.rb,把这个文件里的depends_on
那一行删掉,改成第三步的代码。
然后在bottle do
这个块里增加root_url
,值就是上一步复制的地址去掉最后的文件名。
大功告成。
最后的小提示:源文件计算sha256
shasum -a 256 <下载到本地的tar.gz>