将github分支设置为仅拉(读)

时间:2013-03-08 03:30:15

标签: github

是否可以将共享/公共存储库中的特定分支设置为只读? (我不想让整个存储库只读)

例如,对于除项目经理或执行协调任务的人员以外的大多数人来说,master应该是只读的。

1 个答案:

答案 0 :(得分:1)

不,访问权限是整个存储库。

这意味着,如果您需要这种限制,您需要该回购的私人分叉,只有PM作为协作者:他/她将能够拉出他/她需要。

然后PM可以push --force回到公共回购的主分支(应该明确宣传主人可以随时更改,并且永远不应该被开发人员直接推送)

或者你可以单独留下第一个回购,并将第二个回购公开(只有从PM管理的第二个回购中发出警告,从不推送)。
开发人员可以向他们的本地仓库添加第二个远程引用,第一个是他们推或拉,第二个是在第二个仓库中拉出由PM存储的主要版本。


除此之外,唯一的其他解决方案是您控制的服务器上的中间存储库,您可以在其上添加authorization layer,如gitolite(这将允许只读分支),以及如果提交被视为“有效”,则可以继续推送到GitHub。