有没有办法将GitHub上的特定分支设置为只读(只读),还是只能为整个存储库设置?
答案 0 :(得分:14)
自2015年9月以来,您实际上可以(某种程度上)。
那是因为你现在有了#34; Protected branches and required status checks" (2015年9月3日),允许您保护分支机构:
如上所述in the twitter discussion:
@github很好,那么保护不仅仅是推送而只允许通过拉取请求进行操作?
Adam Roben @aroben @ lowl4tency 您可以通过Status API执行此操作:
创建一个"success
"状态仅适用于PR中的提交,然后根据需要标记该状态。
Since Nov. 2015,您可以使用API保护分支:
curl "https://api.github.com/repos/github/hubot/branches/master" \
-XPATCH \
-H 'Authorization: token TOKEN'
-H "Accept: application/vnd.github.loki-preview" \
-d '{
"protection": {
"enabled": true,
"required_status_checks": {
"enforcement_level": "everyone",
"contexts": [
"required-status"
]
}
}
}'
我该怎么试?
要在预览期间访问此功能,您需要在Accept标头中提供以下自定义媒体类型:
application/vnd.github.loki-preview+json
Since March 2016,组织现在可以指定哪些成员和团队可以推送到受保护的分支。
答案 1 :(得分:6)
无法在Github上执行分支级别权限,但the gitolite project支持您正在寻找的内容。
答案 2 :(得分:1)
从2016年3月30日开始,GitHub支持分支机构权限,不需要任何其他技巧,例如必需的状态检查:https://github.com/blog/2137-protected-branches-improvements