无法在 Gerrit 上创建分支

问题描述 投票:0回答:1

我无法在 Gerrit 上创建远程分支。项目配置如下

Reference:  
refs/heads/*

Create Reference 
Owners

Reference
refs/heads/work_*

Create Reference
Owners
Developers

我正在尝试通过从 git 推送来创建分支:

git push origin refs/heads/work_foo

但是我收到错误 403 权限被拒绝。

如果允许

Developers
创建引用,为什么我不允许这样做?

如果我这样的话它确实有效:

refs/heads/work/*

但由于其他原因,我不能在分支名称中使用斜杠,因此我想保留

work_*
模式。

permissions gerrit
1个回答
0
投票

根据 Gerrit 代码审查 - 访问控制

还可以通过在引用名称前添加 ^ 来使用正则表达式来描述引用名称。例如 ^refs/heads/[a-z]{1,8} 匹配长度在 1 到 8 个字符之间的所有小写分支名称。在正则表达式内。是匹配任何字符的通配符,但可以转义为 .. dk.brics.automaton 库用于评估正则表达式访问控制规则。有关此特定正则表达式风格的详细信息,请参阅库文档。一个怪癖是,最短的可能模式扩展必须是有效的引用名称:因此 ^refs/heads/.*/name 将失败,因为 refs/heads//name 不是有效的引用,而是 ^refs/heads/.+/名字会起作用。

所以,你应该以正则表达式的形式指定它:

Reference
^refs/heads/work_.*
© www.soinside.com 2019 - 2024. All rights reserved.