gitlab-org--gitlab-foss/doc/public_access/public_access.md
2015-11-19 17:24:10 +02:00

59 lines
1.9 KiB
Markdown

# Public access
GitLab allows you to change your projects' visibility in order be accessed
**publicly** or **internally**.
Projects with either of these visibility levels will be listed in the
public access directory (`/public` under your GitLab instance).
Here is the [GitLab.com example](https://gitlab.com/public).
Internal projects will only be available to authenticated users.
## Visibility of projects
### Public projects
Public projects can be cloned **without any** authentication.
They will also be listed on the public access directory (`/public`).
**Any logged in user** will have [Guest](../permissions/permissions)
permissions on the repository.
### Internal projects
Internal projects can be cloned by any logged in user.
They will also be listed on the public access directory (`/public`) for logged
in users.
Any logged in user will have [Guest](../permissions/permissions) permissions on
the repository.
### How to change project visibility
1. Go to your project's **Settings**
1. Change "Visibility Level" to either Public, Internal or Private
## Visibility of users
The public page of a user, located at `/u/username`, is always visible whether
you are logged in or not.
When visiting the public page of a user, you can only see the projects which
you are privileged to.
## Visibility of groups
The public page of a group, located at `/groups/groupname`, is always visible
to everyone.
Logged out users will be able to see the description and the avatar of the
group as well as all public projects belonging to that group.
## Restricting the use of public or internal projects
In the Admin area under **Settings** (`/admin/application_settings`), you can
restrict the use of visibility levels for users when they create a project or a
snippet. This is useful to prevent people exposing their repositories to public
by accident. The restricted visibility settings do not apply to admin users.