首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在Gerrit中,如何暂时阻止/拒绝提交给给定的分支?

在Gerrit中,如何暂时阻止/拒绝提交给给定的分支?
EN

Stack Overflow用户
提问于 2022-02-23 13:30:04
回答 1查看 140关注 0票数 0

可以修改对给定存储库的某些分支的访问规则(包括通过UI和通过Gerrit )来阻止提交(例如,在紧急维护的情况下)。

但是,我知道的唯一方法是,每次必须立即阻止对分支的修改时,都需要手动重新配置规则。因为这很麻烦,容易出错,而且很难文档化,所以我想要一个“红色按钮”的解决方案。

为了避免使用手工书写规则脚本编写重新发明轮子,在我问自己(或者更确切地说是你)之前,对于其他人提出的问题,是否已经有了停止提交错误分支的方法,并同样很容易地允许它们再次出现。

一个我想要的解决方案可以让我轻松地运行

代码语言:javascript
运行
复制
gerrit-set-submit-traffic-light block master

master分支和运行中发生紧急情况

代码语言:javascript
运行
复制
gerrit-set-submit-traffic-light allow master

允许再次提交。

有这样的事吗?这样做的直接方式是什么?

EN

回答 1

Stack Overflow用户

发布于 2022-02-24 08:28:31

选项1

存储库的所有权限都在存储库本身的project.config文件中的project.config ref下维护。

如果要禁用给定分支的“提交”权限,则需要修改该文件。例如,为了暂时限制组Master-Emergency-Submitters成员的提交权限,您可以添加

代码语言:javascript
运行
复制
[access "refs/heads/master"]
        submit = group Master-Emergency-Submitters

一旦紧急情况结束,你会再次移除那个入口。

要执行这些更改,您所需要做的就是推送更新的project.config文件,该文件很容易编写脚本。

选项2

Gerrit 钩子插件支持一个可以阻止提交步骤的submit钩子。钩子是一个简单的shell脚本,您可以使用它根据某些条件禁用对分支的提交。

虽然第二个选项的侵扰性较低,但它仍然会在GUI中保留启用的"Submit“按钮(在用户选择执行它们之后阻止提交),从UX的角度来看,这并不太好。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71237845

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档