可通过codegeex实现conventional commits提交信息自动化生成:一、vscode插件直接在git面板生成结构化消息;二、powershell+ollama命令行函数gco调用本地模型生成;三、pre-commit hook强制校验格式合规性。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

如果您在使用 Git 进行版本控制时,需要频繁编写符合 Conventional Commits 等规范的提交信息,但又面临格式不统一、描述不准确或耗时过长等问题,则可通过 CodeGeeX 实现自动化生成。以下是多种可立即实施的方案:
一、通过 VSCode 插件自动生成 Commit Message
该方法利用 CodeGeeX 官方插件深度集成于 VSCode 编辑器,在 Git 提交界面中直接触发 AI 分析,无需切换终端或手动复制 diff 内容。插件基于本地代码变更上下文与预设风格模板,输出结构化、语义清晰的一行式提交信息。
1、打开 VSCode,进入扩展市场,搜索并安装CodeGeeX 智能编程助手插件。
2、完成代码修改后,点击左侧活动栏中的源代码管理图标,进入 Git 提交面板。
3、在提交消息输入框上方,点击CodeGeeX 图标(闪电符号),插件将自动读取 staged changes 并生成建议消息。
4、在弹出的下拉选项中选择最匹配的提交消息,或点击“重新生成”切换不同风格(如 feat、fix、chore 等前缀)。
二、使用 PowerShell + Ollama 命令行方式生成
该方案适用于偏好终端操作、已部署 Ollama 服务的开发者,完全脱离 IDE,通过自定义 PowerShell 函数实现 git commit -m 的无缝增强。它支持任意兼容模型(如 codegeex4:latest、qwen2.5-coder),并强制遵循 Conventional Commits 规范输出。
1、确保已安装 Git、PowerShell 和 Ollama,并执行ollama pull codegeex4:latest拉取模型。
2、运行notepad $PROFILE打开 PowerShell 配置文件,在末尾添加函数定义。
3、粘贴以下函数内容,并保存:function gco { $diff = git diff --cached; $message = $diff | & ollama run codegeex4:latest "Below is a diff of all staged changes... Please generate a concise, one-line commit message for these changes, conforming to the Conventional Commits specification."; Write-Output $message }
4、重启 PowerShell 或执行. $PROFILE重载配置,随后在 Git 仓库中运行gco即可获得 AI 生成的提交消息,再执行git commit -m "$(gco)"完成提交。
三、配置 Pre-Commit Hook 强制校验格式
该方法不参与生成过程,但作为质量守门员,在每次本地提交前拦截不符合规范的 Commit Message,确保所有提交均通过 CodeGeeX 或其他方式生成且格式合规。Hook 脚本可复用至多个仓库,避免人工疏漏。
1、在项目根目录创建.git/hooks/pre-commit文件(无扩展名),赋予可执行权限。
2、写入校验逻辑:调用git log -1 --pretty=%B提取最近一次提交消息,使用正则匹配^(feat|fix|docs|style|refactor|test|chore|revert)(\(.+\))?: .+。
3、若匹配失败,输出错误提示:"Commit message does not conform to Conventional Commits. Please use CodeGeeX or revise manually."
4、保存后,任何未通过格式校验的提交将被拒绝,开发者必须修正消息或重新调用 CodeGeeX 生成合规内容。











