git-commit-dir-plugin
这是一个 VSCode 插件,可以自动在 Git commit 消息中添加当前文件的目录前缀。
功能特性
- 智能前缀添加:通过快捷键手动将当前文件的目录前缀添加到 Git commit 消息中
- 智能目录检测:自动检测当前打开文件的目录,并提取前两级目录作为前缀
- 提交类型智能替换:如果提交消息已包含
feat(xx): 、fix(xx): 、docs(xx): 、chore(xx): 、refactor(xx): 等格式,会自动将括号中的内容替换为当前文件的前2级目录
- 格式化输出:
- 普通模式:目录前缀以
[目录名] 的格式添加到 commit 消息前
- 提交类型模式:直接替换括号中的内容,如
feat(msg.vue): 修改说明文本 → feat(src/components): 修改说明文本
使用方法
- 在 VSCode 中打开一个文件
- 打开源代码管理面板(
Ctrl+Shift+G )
- 点击 commit 消息输入框,确保光标在输入框内
- 按快捷键:
- Windows/Linux:
Ctrl+Alt+D
- Mac:
Cmd+Shift+Alt+E
- 插件会根据当前提交消息的格式智能添加或替换目录前缀
使用示例
场景1:空白提交消息
- 当前文件:
src/components/Button.vue
- 操作:按快捷键
- 结果:
[src/components]
场景2:普通提交消息
- 当前文件:
src/utils/helper.js
- 原消息:
修复工具函数bug
- 操作:按快捷键
- 结果:
[src/utils] 修复工具函数bug
场景3:已有提交类型格式
- 当前文件:
src/components/Modal.vue
- 原消息:
feat(modal): 添加新的弹窗组件
- 操作:按快捷键
- 结果:
feat(src/components): 添加新的弹窗组件
场景4:简单提交类型格式
- 当前文件:
src/components/Button.vue
- 原消息:
feat: 添加按钮组件
- 操作:按快捷键
- 结果:
feat(src/components): 添加按钮组件
场景5:单级目录
- 当前文件:
docs/api.md
- 原消息:
fix: 更新文档说明
- 操作:按快捷键
- 结果:
fix(docs): 更新文档说明
支持的提交类型
插件支持以下提交类型的智能替换:
feat(xx): - 新功能
fix(xx): - 修复bug
docs(xx): 或 doc(xx): - 文档更新
chore(xx): - 构建过程或辅助工具的变动
refactor(xx): - 重构
style(xx): - 格式化
test(xx): - 测试
perf(xx): - 性能优化
ci(xx): - CI配置
build(xx): - 构建系统
revert(xx): - 回滚
快捷键
Ctrl+Alt+D (Windows/Linux)
Cmd+Shift+Alt+E (Mac)
在 Git commit 输入框获得焦点时使用。
配置选项
gitCommitDirectory.prefixFormat : 前缀格式模板(默认:[{directory}] )
注意:由于 VS Code Git API 限制,暂时不支持自动添加功能,需要手动使用快捷键添加前缀。
开发
# 安装依赖
npm install
# 编译
npm run compile
# 监听文件变化
npm run watch
打包发布
# 安装vsce
npm install -g vsce
# 打包
vsce package
# 发布
vsce publish
| |