QL Git Helper
按规范格式填写并生成 Git 提交信息、草稿保存和 AI 自动填充,支持 GitLab 合并请求、禅道工作项创建规范分支、自测报告。

功能
Git 提交
- 从 Git 面板、源码管理 或 命令面板 打开提交表单
- 多仓库时提交到当前选中的仓库
- 支持 提交 或 提交并推送(无上游分支时自动
git push -u)
- 关闭面板时自动保存草稿,再次打开可继续填写
- 根据代码变更,用 AI 自动填充提交字段(OpenAI 兼容接口,默认 DeepSeek)
GitLab 合并
- 在 Git-合并 标签页基于当前 GitLab 项目创建 Merge Request
- 自动读取当前仓库分支,并默认选择当前分支作为源分支、
master / main 作为目标分支
- 自动读取项目成员,支持搜索并选择指派人与审核者
- 支持在资源管理器右键 Markdown 文件,将文件内容填充为 MR 描述
- 创建 MR 成功后,可通过 QQ 官方机器人向指定群发送通知(需在设置中配置)
自测报告
- 在 自测报告 标签页选择当前分支的一个或多个 Commit,分析 diff 生成自测内容
- AI 自动生成改动内容、直接影响 / 间接影响 / 无影响范围与测试用例
- 支持人工修订各字段、新增用例、上传截图,右侧实时预览完整报告
- 支持导出 Word 文档(.docx)或复制 Markdown 报告
禅道
- 连接禅道,查询指派给你的 需求、Bug、生产问题,并支持历史 BUG 与其他分支
- 按团队规范自动生成目标分支名,并支持手动修改
- 选择起始分支与 commit 后一键创建并切换分支
- Bug / 生产问题可挂靠父需求分支;历史 BUG / 其他分支必须选择父需求分支
状态栏
- 当前 Git 分支若符合命名规范,状态栏会显示关联的禅道工作项标题,点击可跳转详情页
提交格式
<type>(<module>): <摘要>
修改内容:
...
修改原因:
...
处理逻辑:
...
影响范围:
...
自测情况:
...
type 可选:feat、fix、hotfix、perf、refactor、docs、test、build、ci。
分支命名规范
| 类型 |
分支名格式 |
示例 |
| 需求 |
feature/story-{id} |
feature/story-1234 |
| Bug |
bugfix/bug-{id} 或 bugfix/{父需求分支}/bug-{id} |
bugfix/bug-5678 |
| 生产问题 |
hotfix/hotfix-{id} 或 hotfix/{父需求分支}/hotfix-{id} |
hotfix/hotfix-9012 |
| 历史 BUG |
{父需求分支}-fix-{id} |
feature/story-1234-fix-5678 |
| 其他 |
{父需求分支}-self-{YYMMDD}{三位编号} |
feature/story-1234-self-260827001 |
使用
- 打开 Git 源码管理视图,点击工具栏中的 QL Git Helper 图标
或按 Ctrl+Shift+P / Cmd+Shift+P,运行 QL Git Helper
- 在 Git-提交 标签页填写提交信息并提交;未提交的内容会作为草稿保留
- 在 Git-合并 标签页配置 GitLab 后,选择源分支、目标分支、人员与描述,创建 Merge Request
- 在 自测报告 标签页选择 Commit 并分析,修订后导出 Word 或复制 Markdown
- 在 禅道 标签页配置并登录禅道后,选择工作项、起始分支与 commit,创建规范分支
设置
在提交面板内点击 ⚙ 打开设置,或在 VS Code 设置中搜索 qlGitHelper。
AI(大模型)
在 Git 标签页点击 AI 填充,或在自测报告标签页分析 Commit,均需配置以下项:
| 设置项 |
说明 |
默认值 |
qlGitHelper.ai.openai.baseUrl |
OpenAI 兼容接口地址 |
https://api.deepseek.com/v1 |
qlGitHelper.ai.openai.apiKey |
API Key |
(空) |
qlGitHelper.ai.openai.model |
模型名称 |
deepseek-v4-flash |
qlGitHelper.ai.openai.temperature |
采样温度(0–2);部分模型不支持时可设为 null 不传 |
0.2 |
qlGitHelper.ai.outputLanguage |
AI 生成字段的输出语言:zh / en / ja / ko |
zh(中文) |
不同模型可能默认输出英文,可通过 outputLanguage 切换为中文、英文、日语或韩语。
GitLab
| 设置项 |
说明 |
qlGitHelper.gitlab.baseUrl |
GitLab 站点根地址,例如:https://gitlab.example.com |
qlGitHelper.gitlab.token |
GitLab Access Token,用于读取项目成员并创建合并请求 |
配置完成后,在 Git-合并标签页可读取当前项目分支和成员列表,并提交 Merge Request。
QQ 通知
| 设置项 |
说明 |
|
qlGitHelper.qq.enabled |
是否在创建 MR 后发送 QQ 群通知 |
true |
qlGitHelper.qq.configToken |
QQ 机器人密钥 |
|
qlGitHelper.qq.selectedOpenIdsJson |
发消息时 @ 的用户 OpenID(JSON 数组) |
|
在设置中填写密钥并保存后,可勾选要 @ 的成员;创建 MR 成功后会自动发送群通知。
禅道
| 设置项 |
说明 |
qlGitHelper.zentao.baseUrl |
禅道站点根地址,例如:http://example.com/zentao |
qlGitHelper.zentao.authMode |
认证方式:browserSession(推荐)或 password |
qlGitHelper.zentao.sessionId |
浏览器 Cookie 中的 zentaosid,browserSession 模式使用 |
qlGitHelper.zentao.account |
禅道登录账号;Session 模式下可选,用于筛选指派工作项 |
qlGitHelper.zentao.password |
禅道登录密码,password 模式使用 |
推荐使用 浏览器 Session 模式:从浏览器登录禅道后,在开发者工具中复制 Cookie zentaosid,可避免与网页登录互踢。配置完成后,在禅道标签页可查看登录状态;若会话失效,更新 Session ID 即可。
要求
- VS Code
^1.85.0
- 工作区已打开 Git 仓库
- 使用 GitLab 合并功能时,当前仓库 remote 需指向 GitLab 项目,且 Token 需具备读取项目成员与创建 MR 的权限
- 使用禅道功能时需能访问对应禅道站点
- 使用 AI 填充或自测报告时需配置可用的 OpenAI 兼容接口
许可证
MIT
| |