71 lines
5.2 KiB
Markdown
71 lines
5.2 KiB
Markdown
# Permissions
|
|
|
|
Users have different abilities depending on the access level they have in a particular group or project.
|
|
|
|
If a user is both in a project group and in the project itself, the highest permission level is used.
|
|
|
|
If a user is a GitLab administrator they receive all permissions.
|
|
|
|
On public projects the Guest role is not enforced.
|
|
All users will be able to create issues, leave comments, and pull or download the project code.
|
|
|
|
To add or import a user, you can follow the [project users and members
|
|
documentation](../workflow/add-user/add-user.md).
|
|
|
|
## Project
|
|
|
|
| Action | Guest | Reporter | Developer | Master | Owner |
|
|
|---------------------------------------|---------|------------|-------------|----------|--------|
|
|
| Create new issue | ✓ | ✓ | ✓ | ✓ | ✓ |
|
|
| Leave comments | ✓ | ✓ | ✓ | ✓ | ✓ |
|
|
| See a list of builds | ✓ [^1] | ✓ | ✓ | ✓ | ✓ |
|
|
| See a build log | ✓ [^1] | ✓ | ✓ | ✓ | ✓ |
|
|
| Download and browse build artifacts | ✓ [^1] | ✓ | ✓ | ✓ | ✓ |
|
|
| Pull project code | | ✓ | ✓ | ✓ | ✓ |
|
|
| Download project | | ✓ | ✓ | ✓ | ✓ |
|
|
| Create code snippets | | ✓ | ✓ | ✓ | ✓ |
|
|
| Manage issue tracker | | ✓ | ✓ | ✓ | ✓ |
|
|
| Manage labels | | ✓ | ✓ | ✓ | ✓ |
|
|
| Manage merge requests | | | ✓ | ✓ | ✓ |
|
|
| Create new merge request | | | ✓ | ✓ | ✓ |
|
|
| Create new branches | | | ✓ | ✓ | ✓ |
|
|
| Push to non-protected branches | | | ✓ | ✓ | ✓ |
|
|
| Force push to non-protected branches | | | ✓ | ✓ | ✓ |
|
|
| Remove non-protected branches | | | ✓ | ✓ | ✓ |
|
|
| Add tags | | | ✓ | ✓ | ✓ |
|
|
| Write a wiki | | | ✓ | ✓ | ✓ |
|
|
| Cancel and retry builds | | | ✓ | ✓ | ✓ |
|
|
| Create new milestones | | | | ✓ | ✓ |
|
|
| Add new team members | | | | ✓ | ✓ |
|
|
| Push to protected branches | | | | ✓ | ✓ |
|
|
| Enable/disable branch protection | | | | ✓ | ✓ |
|
|
| Turn on/off prot. branch push for devs| | | | ✓ | ✓ |
|
|
| Rewrite/remove git tags | | | | ✓ | ✓ |
|
|
| Edit project | | | | ✓ | ✓ |
|
|
| Add deploy keys to project | | | | ✓ | ✓ |
|
|
| Configure project hooks | | | | ✓ | ✓ |
|
|
| Manage runners | | | | ✓ | ✓ |
|
|
| Manage build triggers | | | | ✓ | ✓ |
|
|
| Manage variables | | | | ✓ | ✓ |
|
|
| Switch visibility level | | | | | ✓ |
|
|
| Transfer project to another namespace | | | | | ✓ |
|
|
| Remove project | | | | | ✓ |
|
|
| Force push to protected branches | | | | | |
|
|
| Remove protected branches | | | | | |
|
|
|
|
[^1]: If **Allow guest to access builds** is enabled in CI settings
|
|
|
|
## Group
|
|
|
|
In order for a group to appear as public and be browsable, it must contain at
|
|
least one public project.
|
|
|
|
Any user can remove themselves from a group, unless they are the last Owner of the group.
|
|
|
|
| Action | Guest | Reporter | Developer | Master | Owner |
|
|
|-------------------------|-------|----------|-----------|--------|-------|
|
|
| Browse group | ✓ | ✓ | ✓ | ✓ | ✓ |
|
|
| Edit group | | | | | ✓ |
|
|
| Create project in group | | | | ✓ | ✓ |
|
|
| Manage group members | | | | | ✓ |
|
|
| Remove group | | | | | ✓ |
|