git - 能否“打破玻璃”并绕过 Github 分支保护进行紧急修复?
问题描述
对于我们的项目,我们使用 Github 的分支保护来强制执行至少 1 名审查员来进行所有更改,管理员也不例外。
然而,总有一天,我们需要紧急修复。这将需要加快合并一个分支,而这只有在其他人在场审查时才会发生。但是如果周围没有人会怎样?
我们需要绕过代码审查要求。
我们可以在合并时暂时禁用代码审查要求,但这是不可取的,因为无法了解何时完成,而且这是一个仅适用于管理员的解决方案。
我想有一种可审计的方式来做到这一点。一个常见的术语是“碎玻璃”,即。您正在打破玻璃并进行紧急合并和部署,因为这是紧急情况,没有人会检查您的代码。
有没有人想出办法在 Github 保护的分支上实现这一点?
解决方案
在我工作的地方,我们使用一个名为Github Organization Manager的程序来管理我们的分支保护,该程序基本上使用单个 git 存储库中的一个文件来管理我们的存储库的设置。这允许在不授予管理员访问权限的情况下公开设置(并且管理器工具不允许用户执行诸如公开存储库或删除它们之类的操作)。还有其他类似的工具。
除了类似的东西,或者只是让用户管理员访问存储库,没有办法在 Github 中内置。如果你真的很担心,那么使用 Github API 构建一个“打破紧急玻璃”仪表板或 slackbot 可以移除分支保护甚至直接合并拉取请求不会太难。
推荐阅读
- excel - VBA字符串函数:不返回值
- arduino - 如何在微秒内同步两个 Arduino
- angular - Angular 8 - 访问承诺对象的值
- regex - 需要匹配具有两个相同字符的字符串
- json - 如何在打字稿中从graphql nestjs服务器读取和写入json文件
- linux - 用于从文件夹和子文件夹中获取字符串模式计数的 Linux 脚本
- typescript - TypeScript - 对象检查/规则中不存在完全禁用属性
- python - 将 JSON 嵌套到 Pandas DataFrames
- javascript - 在我的模态对话框中打开一个外部 URL 页面并捕获一些正在提交给父 React 的信息
- jquery - kendo ui jquery 打印标签