| 特性 | 说明 |
|---|---|
| 一键转换 | 将 GitHub Copilot 或手动编写的提交消息转换为约定式提交格式 |
| 格式检测 | 自动识别已有的约定式提交格式,避免重复处理 |
| 换行保护 | 完美保持原有消息的换行格式和文本结构 |
| 智能清理 | 自动移除重复的提交类型前缀,防止格式错误 |
| 平台 | 支持功能 |
|---|---|
| GitHub | 自动拉取仓库开放议题,支持公开和私有仓库 |
| GitLab | 支持 GitLab.com 和自建 GitLab 实例 |
| Gitee | 支持码云仓库议题管理和关联 |
| 通用功能 | 议题搜索、刷新列表、手动输入议题号 |
| 类型 | 用途 | 示例 |
|---|---|---|
feat |
新功能 | feat(auth): add user login system |
fix |
修复问题 | fix(api): resolve timeout error |
docs |
文档变更 | docs: update installation guide |
style |
代码格式 | style: fix indentation in main.ts |
refactor |
重构 | refactor(utils): simplify validation logic |
perf |
性能优化 | perf(query): optimize database queries |
test |
测试相关 | test: add unit tests for user service |
chore |
构建工具 | chore: update dependencies |
ci |
CI配置 | ci: add automated testing workflow |
build |
构建系统 | build: configure webpack for production |
revert |
回滚 | revert: undo changes in commit abc123 |
| 功能 | 描述 |
|---|---|
| 作用域支持 | 可选的提交作用域,如 auth、api、ui |
| 破坏性变更 | 支持 BREAKING CHANGE 标记,使用复选框切换 |
| 议题关联 | 自动生成 Closes #123 格式的议题引用 |
| 缓存机制 | 智能缓存议题数据,提升加载速度 |
| 错误处理 | 完善的错误提示和重试机制 |
- 在 VSCode 扩展商店搜索 "CommitHelper"
- 点击 安装 按钮
提示: 也可以通过 VS Code Marketplace 直接安装
查看使用步骤
- 在 Git 源代码管理面板中编写或使用 Copilot 生成提交消息
- 点击源代码管理标题栏的 "Format as Conventional Commit" 按钮(标签图标)
- 按照引导选择提交类型、作用域等信息
- 插件会自动格式化并更新你的提交消息
隐私说明: 为了获取私有仓库的议题,你需要配置相应平台的访问令牌
方法一:VSCode 设置
- 打开 VSCode 设置(
Ctrl+,或Cmd+,) - 搜索 "commitHelper"
- 配置相应的令牌:
commitHelper.githubTokencommitHelper.gitlabTokencommitHelper.giteeTokencommitHelper.localGitlabToken
方法二:设置文件
在 VSCode 设置 JSON 中添加:
{
"commitHelper.githubToken": "your_github_personal_access_token",
"commitHelper.gitlabToken": "your_gitlab_personal_access_token",
"commitHelper.giteeToken": "your_gitee_personal_access_token",
"commitHelper.localGitlabToken": "your_local_gitlab_personal_access_token"
}方法三:环境变量
设置环境变量:
export GITHUB_TOKEN="your_github_token"
export GITLAB_TOKEN="your_gitlab_token"
export GITEE_TOKEN="your_gitee_token"
export LOCAL_GITLAB_TOKEN="your_local_gitlab_token"
|
|
|
|
转换前 |
转换后 |
点击查看详细流程
- 类型选择:从下拉列表选择最适合的提交类型
- 作用域输入:可选的功能模块作用域
- 破坏性变更:标记是否为破坏性变更
- 议题选择:从开放议题列表中选择或手动输入
- 内容确认:确认标题和详细描述
- 自动应用:格式化后的消息自动填入提交框
选择要关联的议题 (共 15 个开放议题)
不关联议题
此次提交不关联任何议题
#123 Fix login authentication bug
标签: bug, high-priority
#124 Add dark mode support
标签: enhancement, ui
#125 Improve API performance
标签: performance
手动输入议题号
手动输入议题号
# 克隆仓库
git clone https://github.com/Nowaterisenough/CommitHelper.git
cd CommitHelper
# 安装依赖
npm install
# 编译
npm run compile
# 打包
npm run package
# 在 VSCode 中按 F5 启动调试CommitHelper/
├── src/
│ ├── extension.ts # 主要扩展逻辑
│ └── cache.ts # 缓存系统
├── package.json # 扩展配置和依赖
├── tsconfig.json # TypeScript 配置
├── esbuild.js # 构建配置
└── README.md # 项目文档
欢迎提交 Issue 和 Pull Request!我们鼓励所有形式的贡献。
- Fork 项目
- 创建功能分支 (
git checkout -b feat/amazing-feature) - 提交更改 (
git commit -m 'feat: add amazing feature') - 推送分支 (
git push origin feat/amazing-feature) - 创建 Pull Request
本项目采用 MIT License - 详见 LICENSE 文件
A: 请检查:
- 网络连接是否正常
- 仓库是否为公开仓库(私有仓库需要配置访问令牌)
- 访问令牌是否有正确的权限
- 仓库 URL 格式是否支持(目前支持 GitHub、GitLab、Gitee)
A: 插件会优先使用 origin remote,如果不存在则使用第一个可用的 remote。
A: 当前版本使用标准的约定式提交类型,未来版本会考虑支持自定义类型。
A: 当前版本专注于单个提交消息的格式化,批量处理���能在规划中。