Github“分支名称模式”取反

时间:2019-03-07 21:59:06

标签: regex github

在Github上,当您转到分支设置并创建“分支保护规则”时,如何指定“ master”以外的任何分支?我已经尝试了很多类似正则表达式的表达式,但是似乎都没有用:(

4 个答案:

答案 0 :(得分:7)

您可以使用以下方法创建规则:

master

,然后使用以下命令创建另一个规则(在第一个规则之后):

**/**

然后第二个规则将适用于除master之外的所有分支,因为master属于先前的规则:

enter image description here

答案 1 :(得分:2)

GitHub使用fnmatch与提供的任何模式进行匹配,以找出规则适用于分支保护的分支。

匹配master 以外的所有分支的模式是:

*[!master]*

GitHub helpfnmatch documentation上查看有关上述内容的更多详细信息

答案 2 :(得分:0)

我通过创建六个单独的规则解决了这个问题:

[!m]*
m[!a]*
ma[!s]*
mas[!t]*
mast[!e]*
maste[!r]*

branch protection rules

答案 3 :(得分:-1)

您可以使用负前瞻断言字符串“ master”不匹配:

^((?!^master$).)*$

您可以测试此正则表达式here