GitLab is an all-in-one DevSecOps platform that combines repository management, CI/CD pipelines, issue tracking, security scanning, and deployment tools in a single application. Unlike traditional Git hosting services, GitLab provides a complete software development lifecycle (SDLC) solution where every stage—from planning and coding to testing, security, deployment, and monitoring—is natively integrated. This tight integration eliminates the need to stitch together disparate tools, accelerates workflows, and enables teams to ship software faster while maintaining security and compliance. A key mental model: GitLab treats infrastructure-as-code and pipeline-as-code as first-class citizens, allowing you to version-control not just your application but your entire DevOps configuration. When reading the tables below, remember that most GitLab features are configured through .gitlab-ci.yml files or project settings, and nearly everything can be automated via the REST or GraphQL APIs.
What This Cheat Sheet Covers
This topic spans 14 focused tables and 150 indexed concepts. Below is a complete table-by-table outline of this topic, spanning foundational concepts through advanced details.
Table 1: Repository Management
| Feature | Example | Description |
|---|---|---|
git clone https://gitlab.com/user/project.git | Git-based version control with unlimited private repositories on GitLab.com; supports branches, tags, commits, and standard Git workflows. | |
Fork project → make changes → create MR to upstream | Creates a personal copy of a repository for independent development; commonly used for open-source contributions and team collaboration. | |
Set mirror URL → choose push/pull → authenticate | Synchronizes repositories bidirectionally with external Git sources (GitHub, Bitbucket, etc.); updates occur automatically at defined intervals (default 5 minutes for pull mirrors). | |
Settings → Repository → Protected branches → main | Restricts who can push or merge to specific branches; typically used for main/master to enforce code review and approval workflows. | |
Settings → Repository → Protected tags → v* | Prevents unauthorized tag creation or deletion; ensures release tags remain immutable and auditable. |