有没有一种方法可以在GitHub分支保护中排除特定的分支名称/模式?

时间:2019-02-15 19:49:59

标签: github

例如,我想在所有以“ private_”为前缀的分支 上启用GitHub分支保护。这样,我们不必在创建每个新的“非私有”分支时启用它。

我找不到使用GitHub的模式匹配/匹配规则的方法来实现此目的。像“ / ^ private * /”规则之类的东西是理想的。不幸的是,我们没有强制执行命名约定,因此“ 通用前缀 *”规则在这里无济于事。

有人知道通过GUI分支保护规则而不是通过API做到这一点的方法吗?

谢谢!

2 个答案:

答案 0 :(得分:0)

受保护的分支规则使用来自fnmatch syntax的模式。

它们不能用作RegExp表达式,因此无法应用前瞻性表达式来仅匹配不以private_开头的分支。

您可以做的是为受保护的分支应用前缀。例如,所有名为protected_(或public_)的分支都将受到保护。

所以您需要规则protected_*

演示:https://repl.it/@herodrigues/LopsidedAwfulPortablesoftware

答案 1 :(得分:0)

使用 **\** 作为最后一个分支保护规则,对所有不属于上述任何分支保护规则的分支应用分支保护规则。

例如,如果您有这些分支 - users-1, users-2, releases-1, releases-2, temp-1, temp2, random

然后,将设置如下分支保护:
users-* --> 将覆盖 users-1, users-2
releases-* --> 将覆盖 releases-1, releases-2
**\** --> 将涵盖其他所有内容 temp-1, temp2, random