如何只允许1个用户推送到GitHub中的分支?

时间:2019-05-28 21:10:06

标签: git github

enter image description here

我希望只有1个用户能够推送(强制推送和常规推送)到某个分支,而其他所有人都没有推送权限。

这些是我设置的权限(我的用户在“限制谁可以推送到匹配的分支”下列出。但是,当我尝试强制推送时,出现了分支保护错误。

2 个答案:

答案 0 :(得分:0)

首先,您将只想发出分支请求。您显示的屏幕截图可以帮助您。

完成此操作后,我想您可以对CI进行一项检查,即“检查请求请求的作者是否在白名单中”。

然后,在“合并之前需要通过状态检查”中,添加上一步中提到的检查。

现在,除非您的CI表示“是的,允许该作者在此分支中进行更改”,否则任何人都无法对该分支进行更改

关于是否要自动合并通过白名单检查的分支,我不建议这样做,但是如果愿意,有很多GitHub应用程序都可以做到这一点,并且您也可以创建一个非常小的GitHub使用GitHub API自行应用。

答案 1 :(得分:0)

  

实际上,这仍然不允许用户强制按下。

Since Dec. 4th 2019,有一种方法可以通过启用Allow force pushes来授予所有具有推送访问权限的用户强制推送到受保护分支的功能。

如果CI用户具有对(受保护分支)master的推送访问权限,它将可以强制推送。