Organize work with projects

In GitLab, you can create projects to host your codebase. You can also use projects to track issues, plan work, collaborate on code, and continuously build, test, and use built-in CI/CD to deploy your app.

Projects can be available publicly, internally, or privately. GitLab does not limit the number of private projects you can create.

     
Getting started
Overview of how features fit together.
Create a project
New project, project templates.
Manage projects
Settings, configuration, project activity, project deletion.
Project visibility
Public, private, internal.
Project settings
Project features, analytics, project permissions.
Description templates
Issue templates, merge request templates, instance and group templates.
Project access tokens
Authentication, create, revoke, token expiration.
Deploy keys
Public SSH keys, repository access, bot users, read-only access.
Deploy tokens
Repository cloning, token creation, container registry.
Share projects
Member roles, invitations, group access.
Reserved project and group names
Naming conventions, restrictions, reserved names.
Search
Basic, advanced, exact, search scope, commit SHA search.
Badges
Pipeline status, group, project, custom badges.
Project topics
Project organization, subscribe, view.
Code intelligence
Type signatures, symbol documentation, go-to definition.
Import and migrate
Repository migration, third-party repositories, user contribution mapping.
System notes
Event history, activity log, comments history.
Transfer a project to another namespace
Namespace transfer, subscription transfer.
Use a project as a Go package
Go modules, import calls.
Tutorial: Build a protected workflow for your project
Security, approval rules, branch protection.
Troubleshooting
Problem solving, common issues, debugging, error resolution.