Terminology
Project maintainers
In this documentation, project maintainers will be generally used to refer to people with permissions on the project who are expected to handle the issues created to become project owner, maintainer, or co-maintainer. In the specific, project maintainers means:
- For requests to become project owner, the project owner
- For requests to take over the project namespace, people with the Write to VCS permission
- For requests to become co-maintainer/maintainer, a maintainer (including the project owner), or a co-maintainer with the Administer maintainers permission
- For issues created to verify the project is still maintained/developed, people with the Write to VCS permission
Project roles
The following are the project roles used by drupal.org; they do not match with the GitLab roles. For example, an account with only the Administer maintainers and Write to VCS permissions on a project are considered co-maintainers on drupal.org side, but that account would have the Gitlab Maintainer role. This also means that only the accounts with at least the Administer maintainers and Write to VCS permissions can set the default branch, as described in Setting a default branch.
To check the roles assigned to the project members, visit https://www.drupal.org/project/<projectname>/maintainers.json,
where <projectname> is the project short name (or project machine name).
Owner
An owner owns the project node. By default, the owner created the project, but it can be changed from drupal.org side any time, upon request. Owners have full permissions on the project: make commits, edit the project node, add or remove co-maintainers/maintainers, change the permissions given to each co-maintainer/maintainer, maintain issues, and administer releases. They are maintainers, but differently from the other maintainers, nobody can change the permissions owners have on projects they own. The only way to change the permissions owners have is to change the project owner.
Maintainer
A maintainer has full permissions on the project: make commits, edit the project node, add or remove co-maintainers/maintainers, change the permissions given to each co-maintainer/maintainer, maintain issues, and administer releases. Differently from the owner, any user with the Administer maintainers permission, or other users like drupal.org administrators or drupal.org project moderators, can make a maintainer co-maintainer by removing one of the permissions that maintainer has. When not differently specified, the owner is included in the list of maintainers.
Co-maintainer
A co-maintainer does not have all the permissions on the project. Usually, a co-maintainer can commit code. Most often, co-maintainers are given all the permissions, except the permission to administer maintainers/co-maintainers; the exact permissions each co-maintainer has are assigned by somebody with the Administer maintainers permission on that specific project.