Sau*_*wal 17 github github-api
作为 GitHub 管理员,我想为所有用户锁定 GitHub 中的特定分支。例如,如果我不希望任何人推送到主/生产或项目分支,我该怎么做。
有没有办法直接锁定 GitHub 服务器上的分支,而不是使用任何客户端挂钩?是否有任何第三方工具/API/脚本可以帮助实现这一目标?
自 2022 年 10 月起,有一个更简单的选项:
新分支保护:最后推动者和锁定分支(2022 年 10 月)
推送保护已启用。
这允许锁定分支,禁止更改。
您可以锁定分支,以便拥有维护窗口并防止更改,或者保护分支,使其仅接收来自其上游存储库的更改。要在分支保护规则中使用此功能,请启用“锁定分支”。
有关更多信息,请阅读GitHub 文档中的关于受保护分支。
我们感谢 GitHub公共反馈讨论中对此主题和其他主题的反馈。
最简单的解决方案是将该分支放在自己的存储库中(没有声明任何协作者)。
\n\n否则,GitHub 不提供任何原生的“分支保护”功能,如“如何保护 github 中的 \xe2\x80\x9cmaster\xe2\x80\x9d? ”中所述。
\n\n您可以设置一个 Webhook,如果分支具有给定名称,则该 Webhook 在推送事件上可以拒绝推送。
\n\n一个例子是terite/pull-to-master保护master:
if (json.ref != \'refs/heads/master\')\n return cb([200, \'Skipping, not master\']);\nRun Code Online (Sandbox Code Playgroud)\n\n这不是客户端挂钩,但它确实需要客户端侦听推送事件的 JSON 有效负载才能对其做出反应。
\n| 归档时间: |
|
| 查看次数: |
20562 次 |
| 最近记录: |