A Singapore Government Agency Website

GitLab roles and permissions

GitLab uses roles to control what users can view and do within groups and projects. In SHIP-HATS, roles are managed directly in GitLab, while Console is used to provision GitLab licences.

The most common GitLab roles are:

  • Guest
  • Reporter
  • Developer
  • Maintainer
  • Owner

For details, see GitLab roles.

How repository access works in SHIP-HATS

SHIP-HATS GitLab contains two types of repositories:

Repository access requirements differ between InnerSource and WOG repositories. For a complete explanation, see GitLab access requirements.

InnerSource repositories

The default role for InnerSource repositories depends on whether the user has a GitLab licence.

Active TechPass GitLab licence Default role Access
✅ ❌ Guest View only
✅ ✅ Developer View and contribute
❌ ❌ - No access

For information about automatic role changes and blocked accounts, see Why was my GitLab role changed to Guest?.

For more information, see:

WOG repositories

After users are granted access to a WOG repository, their GitLab role determines what they can do within that repository.

For the access requirements for WOG repositories, see GitLab access requirements.

How roles are managed

When using GitLab in SHIP-HATS:

  • A GitLab group is typically created for each SHIP-HATS project. For details, see Create GitLab groups.
  • The group may contain multiple repositories (GitLab projects).
  • Users are added as members of the group or individual repositories.
  • Roles are assigned directly in GitLab by project administrators.

Roles assigned at the group level may apply to all repositories within that group.

GitLab roles

GitLab provides standard roles that determine what actions users can perform.

Role Typical capability
Guest Limited access. For InnerSource repositories, this is the default role for users without a GitLab licence.
Reporter View repository contents, issues, merge requests, and pipelines.
Developer Push code, create branches, and manage merge requests.
Maintainer Manage repository settings, pipelines, and members.
Owner Full administrative control of a GitLab group.

For detailed role definitions and permissions, see the GitLab documentation.

Open Data Access (GovTech subscriptions only)

Eligible GovTech users may have view access to GovTech repositories through Open Data Access.

For details, see Open Data Access for GitLab repositories.

Chat with me!
Bot Launcher