Gitlab:团队成员项目访问级别

Sve*_*ven 34 gitlab

GitLab为"团队成员"提供与特定项目合作的项目访问级别"访客","报告者","开发人员"和"主人".

"主人"和"客人"是不言自明的,但其他人对我来说不是很清楚,无论是在范围上还是在他们的粒度上.这些级别有什么区别?

Von*_*onC 32

2013:project_security_spec.rb测试每个配置文件功能,列在ability.rb:

(2017年GitLab 10.x:这样的可能性更大app/policies/project_policy.rb)

这些规则非常明确:

def public_project_rules
  [
    :download_code,
    :fork_project,
    :read_project,
    :read_wiki,
    :read_issue,
    :read_milestone,
    :read_project_snippet,
    :read_team_member,
    :read_merge_request,
    :read_note,
    :write_issue,
    :write_note
  ]
end

def project_guest_rules
  [
    :read_project,
    :read_wiki,
    :read_issue,
    :read_milestone,
    :read_project_snippet,
    :read_team_member,
    :read_merge_request,
    :read_note,
    :write_project,
    :write_issue,
    :write_note
  ]
end

def project_report_rules
  project_guest_rules + [
    :download_code,
    :fork_project,
    :write_project_snippet
  ]
end

def project_dev_rules
  project_report_rules + [
    :write_merge_request,
    :write_wiki,
    :push_code
  ]
end
Run Code Online (Sandbox Code Playgroud)

这意味着:

  • 记者是客人,他还可以:
    • 下载代码,
    • 叉一个项目,
    • 写项目片段
  • 开发人员是一名记者,他还可以:
    • 写合并请求,
    • 写维基页面,
    • 推送代码


Mat*_*rne 18

目前,访问级别已在此处详细记录:http://doc.gitlab.com/ce/permissions/permissions.html