在IntelliJ IDEA中如何强制Git提交信息以feature:或bug:开头?
在IntelliJ IDEA中强制Git提交信息格式
有两种方式可以实现强制提交信息以feature:或bug:开头的要求,分别适用于不同场景:
方法一:用IntelliJ IDEA自带的提交信息校验
这种方式仅在IDEA内生效,操作简单:
- 打开IDEA设置:Windows/Linux点
File → Settings,Mac点IntelliJ IDEA → Settings - 依次展开
Version Control → Commit → Commit Message - 勾选Enable commit message validation(启用提交信息校验)
- 在
Regex pattern输入框中填入正则:^(feature|bug): .+- 这个规则会强制提交信息必须以
feature:或bug:开头,且后面要有具体描述内容
- 这个规则会强制提交信息必须以
- 可以在
Error message里自定义提示语,比如填“提交信息必须以feature:或bug:开头,请修改后重试” - 点击
Apply保存设置,之后每次在IDEA里提交代码时,不符合格式的提交会被直接拦截
方法二:配置Git的commit-msg钩子(跨工具生效)
如果要确保所有提交方式(包括终端、其他Git客户端)都遵守格式要求,推荐用Git钩子:
- 找到项目根目录下的
.git/hooks文件夹,里面有个commit-msg.sample文件,复制一份并重命名为commit-msg(删掉.sample后缀) - 用文本编辑器打开这个
commit-msg文件,替换成以下脚本:
#!/bin/sh # 读取提交信息文件内容 COMMIT_MSG=$(cat "$1") # 校验提交信息格式 if ! echo "$COMMIT_MSG" | grep -qE '^(feature|bug): .+'; then echo "❌ 提交信息格式错误:必须以feature:或bug:开头" >&2 exit 1 fi
- 给脚本添加执行权限:打开终端,进入项目根目录,运行
chmod +x .git/hooks/commit-msg - 完成后,不管用IDEA还是其他工具提交代码,只要提交信息不符合要求,Git都会直接拒绝此次提交
内容的提问来源于stack exchange,提问作者Maayan Hope
相关产品推荐
相关产品推荐

