| sidebar_position | 3 |
|---|---|
| title | GitLab - The DevOps Specialist |
| sidebar_label | 3. GitLab |
| description | Explore GitLab, the all-in-one DevOps platform for hosting, testing, and securing your code. |
GitLab is a complete, web-based DevOps platform that provides everything you need to manage a project from start to finish. While GitHub is famous for "Open Source," GitLab is famous for its "All-in-One" philosophy—handling planning, coding, security, and deployment in a single app.
- Powerful Built-in CI/CD: GitLab was the first to build "Continuous Integration" directly into the platform. You don't need a third-party tool; the automation engine is already there.
- Self-Hosting: Many companies (like NASA and Sony) use GitLab because they can install it on their own private servers. This ensures their code never leaves their internal network.
- Security First: GitLab automatically scans your code for security vulnerabilities, secret leaks, and even license compliance as soon as you push your code.
- Free Private Repositories: GitLab was one of the first platforms to offer unlimited private repositories for free, making it a favorite for private startups.
GitLab covers every stage of the software development lifecycle. In the industry, we call this the DevOps Lifecycle.
graph LR
Plan --> Create
Create --> Verify
Verify --> Package
Package --> Release
Release --> Configure
Configure --> Monitor
Monitor --> Plan
- GitLab CI/CD: Uses a simple file called
.gitlab-ci.ymlto run tests and deploy code automatically. - Auto DevOps: Automatically detects the language you are using and sets up a best-practice pipeline for you.
- Milestones: Track groups of issues related to a specific release date.
- Epics: High-level goals that contain multiple issues (great for long-term planning).
- Time Tracking: Built-in tools to estimate and track how much time developers spend on tasks.
- SAST (Static Analysis): Checks your source code for common security flaws.
- Dependency Scanning: Alerts you if any of your
npmorpippackages have known bugs.
| Feature | GitLab | GitHub |
|---|---|---|
| Philosophy | All-in-one integrated tool. | Modular (integrates with other apps). |
| CI/CD | Deeply integrated and native. | GitHub Actions (Powerful but separate). |
| Self-Hosting | Primary feature (GitLab CE/EE). | Available but very expensive (Enterprise). |
| Community | Professional & Enterprise. | Largest Open Source community. |
- GitLab Docs: Extremely detailed documentation for every feature.
- GitLab University: Video tutorials and paths to become a certified GitLab Associate.
- GitLab for Students: Check if your university qualifies for a free GitLab Ultimate license!
- [x] I understand that GitLab is an "All-in-One" DevOps platform.
- [x] I know that GitLab is famous for its built-in CI/CD pipelines.
- [x] I understand that companies use GitLab because it can be self-hosted.
- [x] I recognize the "DevOps Loop" stages.
:::tip Pro-Tip If you ever want to run your own code-hosting server at home on a Raspberry Pi, GitLab is the perfect software to install. It gives you full control over your code without relying on any company! :::