Github仅允许合作者通过拉取请求来推送更改

对于GitHub而言,我已经创建了一个名为X的远程 PRIVATE 存储库,并拥有一个协作者-人Y。目前,人Y可以简单地接受邀请成为协作者,并且无需分叉仓库,只需进行编辑,提交更改,它就会出现在master分支上。这显然是不可取的,而且默认情况下甚至允许这样做似乎也很荒谬。

我希望Y人(合作者):

-必须分叉存储库,并且只能在分叉的仓库上工作

-只能通过拉取请求进行更改

-在提交给主服务器之前,必须有我接受/批准的拉取请求。

我查看了一些答案,然后尝试: -转到设置 -前往分支机构(在左侧) 更改访问权限

但是我注意到它需要升级。

我敢肯定,我已经听说过GitHub允许最多三个合作者使用全部功能。

关于SO的其他类似问题,有0个答案。

我还在设置中看到了此选项:

“在合并拉取请求时,您可以允许合并提交,压缩或重新设置基准的任何组合。必须启用至少一个选项。如果在任何受保护的分支上启用了线性历史记录要求,则必须启用压缩或重新定级。”

允许合并提交 使用合并提交将所有提交从head分支添加到基本分支。

我不清楚以上是指什么。如果我进行了检查,是否会阻止来自合作者的所有提交都未经授权直接推送到master分支?

更新

我注意到一些答案表明无法完成此操作(保护分支),但是优良作法是简单地同意始终创建拉取请求。我要求强制执行拉取请求-如果不强制执行,则很可能会意外将其推向主服务器。

然后的问题是,对此有什么解决方法(无需付费)。

  1. 分叉?您如何“授予”对另一个用户的PRIVATE存储库访问权限。我只能看到通过邀请协作者共享访问权限的选项。

  2. 此选项显示:默认分支 默认分支被视为存储库中的“基础”分支,除非您指定其他分支,否则将自动针对该分支执行所有拉取请求和代码提交。

在上述情况下,我将如何创建master分支的副本,以便协作者能够正常工作,从而保护实际的master分支?

  1. 我唯一想到的另一种选择是创建三个级别。

一个:我:项目(受保护的Master分支,因为我仅授予对-me 2的访问权限) 两个。我2:我被授予协作者访问权限,并且分叉了该项目。 (称之为其他) 三个。然后,我将授予分叉项目的协作者访问权限(如果允许),授予其他人。这样,协作者可以更改第2部分中的分支项目,但不能更改第1部分中的原始主项目。

同样,当保护master分支所需的全部工作仅允许通过需要授权的拉取请求推送到master时,这一切似乎都太漫长而不必要了。

还有其他选择吗?任何建议都将不胜感激。

iCMS 回答:Github仅允许合作者通过拉取请求来推送更改

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/1780519.html

大家都在问