Namespaces
Namespaces organize projects in GitLab. Because each namespace is separate, you can use the same project name in multiple namespaces.
Types of namespaces
GitLab has two types of namespaces:
-
User: Your personal namespace is based on your username. In a personal namespace:
- You cannot create subgroups.
- Groups do not inherit your namespace permissions or group features.
- All the projects you create are under the scope of this namespace.
- Changes to your username also change project and namespace URLs. Before you change your username, read about repository redirects.
-
Group: A group or subgroup namespace is based on the group or subgroup name. In group and subgroup namespaces:
- You can create multiple subgroups to manage multiple projects.
- Subgroups inherit some of the parent group settings. You can view these in the subgroup Settings.
- You can configure settings specifically for each subgroup and project.
- You can manage the group or subgroup URL independently of the name.
Determine which type of namespace you’re in
To determine whether you’re in a group or personal namespace, you can view the URL. For example:
Namespace for | URL | Namespace |
---|---|---|
A user named alex .
|
https://gitlab.example.com/alex
|
alex
|
A group named alex-team .
|
https://gitlab.example.com/alex-team
|
alex-team
|
A group named alex-team with a subgroup named marketing .
|
https://gitlab.example.com/alex-team/marketing
|
alex-team/marketing
|
Name limitations
When you choose a name for your namespace, keep in mind the character limitations and reserved group names.
Namespaces with a period (
.
) cause issues with SSL certificate validation and the source path when publishing Terraform modules.