File: index.md

package info (click to toggle)
gitlab 17.6.5-19
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 629,368 kB
  • sloc: ruby: 1,915,304; javascript: 557,307; sql: 60,639; xml: 6,509; sh: 4,567; makefile: 1,239; python: 406
file content (44 lines) | stat: -rw-r--r-- 2,324 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
---
stage: Data Stores
group: Tenant Scale
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
---

# 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](../project/repository/index.md#repository-path-changes).

- **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](../reserved_names.md#limitations-on-usernames-project-and-group-names-and-slugs) and [reserved group names](../reserved_names.md#reserved-group-names).

NOTE:
Namespaces with a period (`.`) cause issues with SSL certificate validation and the source path when [publishing Terraform modules](../packages/terraform_module_registry/index.md#publish-a-terraform-module).