云效的代码仓库推送规则设置配置了 (^)(feat|fix):\s(.|$) 提交格式为git commit -m "feat: 提交",却提交不上,一直报推送规则检查不通过!提交注释不符合正则表达式
正则表达式能按照下面格式正常提交
//提交格式为 (scope?): /* * @Description: commit-msg提交信息格式规范 * * commit-msg格式: (scope?): * - type: 用于表明我们这次提交的改动类型,是新增了功能?还是修改了测试代码?又或者是更新了文档? * - build: 编译相关的修改,例如发布版本、对项目构建或者依赖的改动 * - chore: 其他修改, 比如改变构建流程、或者增加依赖库、工具等 * - ci: 持续集成修改 * - docs: 文档修改 * - feat: 新特性、新功能 * - fix: 修改bug * - perf: 优化相关,比如提升性能、体验 * - refactor: 代码重构 * - revert: 回滚到上一个版本 * - style: 代码格式修改, 注意不是 css 修改 * - test: 测试用例修改 * - scope:一个可选的修改范围。用于标识此次提交主要涉及到代码中哪个模块。 * - Subject:一句话描述此次提交的主要内容,做到言简意赅 */
...
正则如下:
(?i)(\W|^)(build|chore|ci|docs|feat|fix|perf|refactor|revert|style|test)(.*)?(:)(.)+(\W|$)
可成功提交的注释如下:
fix scope:subject for this fixbuild:subject for this building
不可成功提交的注释如下:
fix some bugstest:
需要注意的是,如果有一次注释出错后,您需要将错误的提交注释全部修改正确后才可以提交成功,因为在push的时候,检查的是每一个注释而不是最后一个注释。
git commit --amend
将红框内的注释更正为匹配正则的后,退出保存即可。
比如 commit 两次,那么可参考以下步骤进行修改:
#数字 n 可以换成你需要修改的提交次数,代表倒数第几次修改git rebase -i HEAD~n#本示例则为git rebase -i HEAD~2
将需要修改的注释前面的 pick 修改为 edit ,可同时在一次修改多条,修改后保存退出。
接着反复执行以下这组命令,直到所有修改 edit 的注释都修改完:
#以下命令表示一次注释修改git commit --amend git rebase --continue
再次 push 即可。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
云效,企业级一站式研发协同平台,数十万企业都在用。支持公共云、专有云和混合云多种部署形态,通过云原生新技术和研发新模式,助力创新创业和数字化转型企业快速实现研发敏捷和组织敏捷,打造“双敏”组织,实现多倍效能提升。