2014-05-27 08:12:15 -04:00
# Public access
2014-08-04 16:32:41 -04:00
GitLab allows you to open selected projects to be accessed **publicly** or **internally** .
2014-04-24 18:48:22 -04:00
2014-06-04 03:43:53 -04:00
Projects with either of these visibility levels will be listed in the [public access directory ](/public ).
2014-04-24 18:48:22 -04:00
2014-02-13 05:55:46 -05:00
Internal projects will only be available to authenticated users.
2014-04-24 18:48:22 -04:00
## Public projects
2014-02-13 05:55:46 -05:00
Public projects can be cloned **without any** authentication.
2014-04-24 18:48:22 -04:00
2014-05-05 18:47:56 -04:00
It will also be listed on the [public access directory ](/public ).
2014-04-24 18:48:22 -04:00
2014-07-04 07:15:36 -04:00
**Any logged in user** will have [Guest ](../permissions/permissions ) permissions on the repository.
2014-02-13 05:55:46 -05:00
2014-04-24 18:48:22 -04:00
## Internal projects
2014-02-13 05:55:46 -05:00
Internal projects can be cloned by any logged in user.
2014-04-24 18:48:22 -04:00
2014-02-13 05:55:46 -05:00
It will also be listed on the [public access directory ](/public ) for logged in users.
2014-04-24 18:48:22 -04:00
2014-07-04 07:15:36 -04:00
Any logged in user will have [Guest ](../permissions/permissions ) permissions on the repository.
2014-02-13 05:55:46 -05:00
2014-04-24 18:48:22 -04:00
## How to change project visibility
2014-02-13 05:55:46 -05:00
1. Go to your project dashboard
2014-04-24 18:48:22 -04:00
1. Click on the "Edit" tab
1. Change "Visibility Level"
## Visibility of users
2014-02-13 05:55:46 -05:00
The public page of users, located at `/u/username` is visible if either:
2014-04-24 18:48:22 -04:00
- You are logged in.
- You are logged out, and the target user is authorized to (is Guest, Reporter, etc.) at least one public project.
2014-02-13 05:55:46 -05:00
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.
2014-05-23 08:31:09 -04:00
2014-04-24 18:48:22 -04:00
## Restricting the use of public or internal projects
2014-05-23 08:31:09 -04:00
2014-04-24 18:48:22 -04:00
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.