Sublime优化Git提交信息规范_集成Commitizen与Commitlint

1次阅读

sublime Text 中集成 Commitizen 和 Commitlint 可规范 git 提交格式:先全局安装 Commitizen 并配置 cz-conventional-changelog,再通过 SublimeGit/GitSavvy 或自定义构建系统调用 git cz;接着安装 Commitlint 与 Husky,在 commit-msg 钩子中校验消息格式;最后可选安装 Conventional Commits 插件实现语法高亮与模板提示。

Sublime优化Git提交信息规范_集成Commitizen与Commitlint

sublime text 中集成 Commitizen 和 Commitlint,能有效规范 Git 提交信息格式,提升团队协作效率和代码可追溯性。核心思路是:用 Commitizen 替代手动输入 commit message,再通过 Commitlint 在本地校验格式是否符合约定式提交(Conventional Commits)标准。

安装并配置 Commitizen CLI

Commitizen 是一个交互式提交工具,帮你按规则生成标准化的提交信息。

  • 全局安装:npm install -g commitizen cz-conventional-changelog
  • 配置项目级适配器:在项目根目录创建 package.json(若无),添加字段:
    "config": { "commitizen": { "path": "cz-conventional-changelog" } }
  • 验证是否生效:终端执行 git cz,应出现交互式菜单(如 feat、fix、docs 等类型选项)

在 Sublime Text 中调用 git cz

Sublime 默认不支持直接运行交互式 CLI 命令,需借助插件或自定义构建系统实现无缝调用。

  • 推荐使用 SublimeGit 插件(付费但稳定)或 GitSavvy(免费开源)——二者均支持绑定 git cz 命令到快捷键
  • 若偏好轻量方案,可手动配置构建系统:
    新建 Tools → Build System → New Build System,填入以下内容并保存为 GitCZ.sublime-build
    {   "shell_cmd": "git cz",   "working_dir": "${project_path:${folder}}",   "variants": [     {       "name": "With --no-verify",       "shell_cmd": "git cz --no-verify"     }   ] }
  • 之后按 Ctrl+Shift+Bwin/linux)或 Cmd+Shift+Bmac),选择 GitCZ 即可启动交互式提交

接入 Commitlint 实现本地校验

Commitlint 负责检查 commit message 是否符合约定式提交规范,防止不合规提交进入仓库。

Sublime优化Git提交信息规范_集成Commitizen与Commitlint

Motiff

Motiff是由猿辅导旗下的一款界面设计工具,定位为“ai时代设计工具”

Sublime优化Git提交信息规范_集成Commitizen与Commitlint 126

查看详情 Sublime优化Git提交信息规范_集成Commitizen与Commitlint

  • 安装依赖:npm install –save-dev @commitlint/config-conventional @commitlint/cli
  • 创建配置文件 commitlint.config.js(项目根目录):
    module.exports = {   extends: ['@commitlint/config-conventional'] };
  • 配置 Husky(推荐 v8+)实现 pre-commit 钩子自动校验:
    npx husky add .husky/commit-msg ‘npx –no-install commitlint –edit $1’
  • 注意:此钩子在 Sublime 中通过 git cz 提交时同样生效,不合规范会中止提交并提示错误

可选增强:Sublime 内置语法高亮与模板提示

提升编写体验,降低学习成本。

  • 安装插件 Conventional Commits(Package Control 可搜),提供 commit message 的语法高亮和自动补全
  • 在 Sublime 的 Preferences → Settings – Syntax Specific 中为 Plain TextGit Commit 类型设置默认占位符,例如:
    {   "placeholder": "type(scope): subjectnnbodynnfooter" }
  • 配合 GitSavvy,还能在提交面板中预览解析后的 type、scope、subject 结构,便于自查

基本上就这些。Commitizen + Commitlint 的组合在 Sublime 中虽不如 vs code 生态开箱即用,但配置一次后即可长期受益——提交更规范、PR 更清晰、Changelog 生成也更可靠。

text=ZqhQzanResources