Gitlab因为push rules导致git push出错

本文介绍了如何解决在GitLab中提交信息不符合规范导致的Push错误。提供了两种解决方案:一是通过更改项目的设置禁用特定的Push规则;二是修改提交信息使其符合仓库的要求。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近用Gitlab的时候push报错:

remote: GitLab: Commit message does not follow the pattern '^(fix|feat|refactor|chore|style|docs|test):([\s\S]){5,}$|^Merge|^Resolve|^Feat'
...
master -> master (pre-receive hook declined)

报错的意思是,我要按照它这个格式来写commit对应的信息,比如feat: add feature

正常Github里提交信息,commit里应该想写啥就写啥的,这里会报错就是因为Gitlab设置了Push Rules。解决办法有两个,如下所示:


一. 改变Project的项目设置

参考:https://docs.gitlab.com/ee/push_rules/push_rules.html#:~:text=On%20the%20left%20sidebar%2C%20select%20Settings%20%3E%20Repository.,Select%20Save%20push%20rules.

如果是自身创建的仓库,那么直接进入Gitlab里的仓库,进行如下操作:
在这里插入图片描述
如下图所示,把这行已经存在的命令删掉即可,然后Save Push Rules即可:
在这里插入图片描述


二. 修改之前提交的Commits

参考:https://gerrit-review.googlesource.com/Documentation/error-push-fails-due-to-commit-message.html

核心思路是修改自己的commit信息,让它符合仓库的命令格式。如果是last commit,可以直接写这样的,来修改上一次的提交信息:

 $ git commit --amend

如果是更早的commits,需要使用interactive git rebase,具体的我没做过,不多说了。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值