public_access.md 1.62 KB
Newer Older
Marin Jankovski's avatar
Marin Jankovski committed
1 2
# Public access

3
GitLab allows you to open selected projects to be accessed **publicly** or **internally**.
4

Kaizer Sogiawala's avatar
Kaizer Sogiawala committed
5
Projects with either of these visibility levels will be listed in the [public access directory](/public).
6

7 8
Internal projects will only be available to authenticated users.

9 10
## Public projects

11
Public projects can be cloned **without any** authentication.
12

maiki's avatar
maiki committed
13
It will also be listed on the [public access directory](/public).
14

15
**Any logged in user** will have [Guest](../permissions/permissions) permissions on the repository.
16

17 18
## Internal projects

19
Internal projects can be cloned by any logged in user.
20

21
It will also be listed on the [public access directory](/public) for logged in users.
22

23
Any logged in user will have [Guest](../permissions/permissions) permissions on the repository.
24

25 26
## How to change project visibility

27
1. Go to your project dashboard
28 29 30 31
1. Click on the "Edit" tab
1. Change "Visibility Level"

## Visibility of users
32 33 34

The public page of users, located at `/u/username` is visible if either:

35 36
- You are logged in.
- You are logged out, and the target user is authorized to (is Guest, Reporter, etc.) at least one public project.
37 38 39 40

Otherwise, you will be redirected to the sign in page.

When visiting the public page of an user, you will only see listed projects which you can view yourself.
41

42
## Restricting the use of public or internal projects
43

44
In [gitlab.yml](https://gitlab.com/gitlab-org/gitlab-ce/blob/dbd88d453b8e6c78a423fa7e692004b1db6ea069/config/gitlab.yml.example#L64) you can disable public projects or public and internal projects for the entire GitLab installation to prevent people making code public by accident.