配置提交规则-九游平台
提交规则概述
codearts repo支持为代码的提交建立校验、限制规则,以确保代码质量。
下面将介绍“配置项目级的提交规则”及“常见的正则表达式示例”。
约束限制
当用户角色为“项目经理”或者“项目管理员”,可以设置项目级webhook。
配置项目级的提交规则
在代码托管九游平台首页,进入项目九游平台首页,选择“设置” > “策略设置” > “提交规则”。
如果用户想对项目下的所有仓库设置相同的提交规则,请按照表1填写参数,并勾选“开启强制继承”。
字段 |
说明 |
---|---|
拒绝未signed-off-by签名的提交 |
配置只允许signed-off-by签名的提交才能推送到仓库。 代码托管服务签名方式: 在代码托管服务中进行在线commit时,编写提交信息需采用以下格式: commit message #此处填写自定义提交信息。 #此处为空行。 signed-off-by:自定义签名 #此处在“signed-off-by:”后面填写自定义签名。 git客户端签名方式: 在git客户端进行commit时,需增加 -s参数。 git commit -s -m “用户的提交备注” 注意需要提前在客户端配置好签名和邮箱。 |
拒绝未gpg签名的提交 |
配置只允许gpg签名的提交才能推送到仓库。 配置gpg密钥: git config --global user.signingkey “用户的gpg私钥” git客户端签名方式: 在git客户端进行commit时,需增加-s参数。 git commit -s -m “用户的提交备注” 在git客户端进行tag时,需增加-s参数。 git tag -s -m “用户的标签备注” 注意需要提前在客户端配置好签名和邮箱。 |
不允许删除tags |
勾选后,禁止通过页面以及客户端命令的方式删除tags。 |
阻止包含涉密文件的提交 |
涉密文件包括id_rsa和id_dsa等文件。 |
拒绝使用git push -f命令提交代码 |
配置是否不允许在客户端使用git push -f命令提交代码。 git push -f表示将目前自己本机的代码库推送到代码托管并覆盖。 一般情况下建议禁止使用。 |
如果用户想对项目下仓库的指定分支设置提交规则,请用户单击“新建提交规则”,参数填写请参见表格表2。
参数名 |
参数说明 |
---|---|
规则名称 |
必填参数,自定义规则名称。 |
分支规则 |
必填参数,需要输入完整规则名或创建一个正则表达式。需要对输入进行校验,包括分支名的校验和正则表达式校验。 |
提交规则 |
非必填。
|
文件基本属性规则 |
非必填。
|
二进制规则 |
非必填。 二进制规则默认不勾选,默认勾选“禁止禁止新增二进制文件(对特权用户无效)”。“允许修改二进制文件”勾选后,提交文件为modify状态的二进制文件不会拦截,可直接上传。二进制文件可以直接删除,不会进行二进制检查。
|
规则生效时间 |
非必填。 在生效日期之后创建的所有提交都必须与hook设置相匹配才能被推送。如果此字段为空,则无论提交日期如何,都将检查所有提交。 |
常见的正则表达式示例
常见的正则表达式示例可参考常见的正则表达式示例。
规则 |
示例 |
---|---|
单个a或b或c字符 |
[abc] |
非a或b或c的字符 |
[^abc] |
在a到z范围内的小写英语字母字符 |
[a-z] |
在a到z范围外的字符 |
[^a-z] |
在a到z或a到z范围内的大小写英语字母字符 |
[a-za-z] |
任意单个字符 |
. |
选择 - 匹配 a 或 b |
a|b |
任意空白字符 |
\s |
非空白字符 |
\s |
阿拉伯数字字符 |
\d |
非阿拉伯数字字符 |
\d |
字母、数字或下划线的字符 |
\w |
非字母、数字或下划线的字符 |
\w |
匹配括号中的内容(不捕获) |
(?:...) |
匹配并捕获括号中的内容 |
(...) |
零个或一个a |
a? |
零个或更多a |
a* |
一个及以上a |
a |
三个a |
a{3} |
三个a以上 |
a{3,} |
3到6个a |
a{3,6} |
文本开头 |
^ |
文本末尾 |
$ |
单词边界 |
\b |
非单词边界 |
\b |
换行符 |
\n |
回车符 |
\r |
制表符 |
\t |
空字符 |
\0 |
相关文档
意见反馈
文档内容是否对您有帮助?
如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨