我们想阻止人们直接向master推送。但我们也希望人们能够将他们的PR合并为master。
我已尝试在master分支上选择Restrict who can push to matching branches
。这会自动选择一个选项以允许Organization administrators, repository administrators, and users with the Maintain role.
。
然后,如果我有一个团队有一个维护角色,他们仍然可以直接推动大师。如果我将此权限降级为"写入",则它们将无法合并PR。
有办法绕过这个吗?
您应该能够在合并前启用"要求提取请求审核"。
启用时,所有提交都必须提交到非受保护的分支,并且通过具有所需批准次数的拉取请求提交在将其合并到分支之前进行了审阅并且没有请求任何更改符合此规则。
这样做应该可以让您停止直接进入master。此外,您还可以启用要求在合并前通过状态检查这将再次阻止用户直接进入master,因为状态检查不会通过。
在此工作流中,您可以决定管理员是否不受这些规则的约束。