遵循conventional commits规范需四步:一、手动构建type(scope): subject格式提交;二、用commitizen交互生成;三、配husky+commitlint提交前校验;四、在ide中安装插件集成。

如果您在使用 Git 提交代码时希望提交信息具备可读性、可解析性和自动化友好性,则需遵循 Conventional Commits 规范。以下是实现规范化提交信息的具体操作路径:
一、手动构建符合规范的提交信息
该方法直接通过 git commit -m 命令构造结构化消息,适用于轻量项目或临时提交场景,无需额外工具依赖。其核心在于严格遵守 Header 行的语法约束,并合理组织可选的正文与脚注。
1、确定提交类型(type),从 feat、fix、docs、style、refactor、perf、test、chore、build 中选择一项;
2、可选添加作用域(scope),用圆括号包裹,例如 (ui)、(auth)、(api);
3、在冒号后空一格,以动词原形开头撰写不超过 50 字的简短描述(subject),首字母小写、不加句号;
4、如需补充上下文,在 subject 后空一行写入正文(body),说明修改原因及影响范围;
5、如涉及破坏性变更,在正文后空一行添加以 BREAKING CHANGE: 开头的脚注;如修复 issue,可写入 Closes #123 或 Fixes #456。
二、使用 commitizen 交互式生成提交信息
该方法通过命令行向导引导用户逐项输入必要字段,自动拼接为合规格式,显著降低记忆成本与手误风险,适合团队统一入口场景。
1、全局安装 commitizen 与 cz-conventional-changelog 适配器:npm install -g commitizen cz-conventional-changelog;
2、在用户主目录创建配置文件 ~/.czrc,内容为 {"path": "cz-conventional-changelog"};
3、进入项目根目录,执行 git cz 启动交互流程;
4、按提示依次选择变更类型、填写作用域、输入简短描述、补充长描述、确认是否含破坏性变更、关联 issue 编号;
5、确认后自动生成完整提交信息并完成提交。
三、配置 husky + commitlint 实现提交前校验
该方法在 git commit 触发时自动检查消息格式,拒绝不符合 Conventional Commits 规则的提交,保障仓库历史质量底线,适用于中大型协作项目。
1、项目内安装 husky 与 @commitlint/cli、@commitlint/config-conventional:npm install -D husky @commitlint/cli @commitlint/config-conventional;
2、初始化 husky 并添加 commit-msg 钩子:npx husky add .husky/commit-msg 'npx --no-install commitlint --edit "$1"';
3、创建 commitlint.config.js 文件,内容为 module.exports = { extends: ['@commitlint/config-conventional'] };;
4、验证配置:尝试提交一条非规范消息(如 git commit -m "update readme"),将被拦截并提示错误;
5、仅当消息匹配 type(scope): subject 格式且 type 在允许列表中时,提交才被放行。
四、在 IDE 中集成 Conventional Commits 插件
该方法将规范提交流程嵌入日常开发界面,避免切换终端,提升前端与全栈开发者操作连贯性,尤其适合 JetBrains 系列 IDE 用户。
1、打开 IDEA 或 WebStorm 的 Settings → Plugins → Marketplace;
2、搜索并安装 Conventional Commit 插件;
3、重启 IDE 后,在 Commit 工具窗口点击右上角小红点(Commit Message Assistant);
4、在弹出面板中选择 type、输入 scope、填写 subject 和 body;
5、点击 Insert 按钮,自动生成格式正确的内容并填入提交框,支持一键提交。











