There are currently 5 different editions of GitLab, including free, paid, cloud and more. This variety confuses some users, so I wrote this article to explain the differences between the editions.
I’m going to introduce the editions as different layers on top of each other. Each layer provides some additional functionality beyond the layer below it.
- The first layer includes the free editions.
- The second layer is the Enterprise Started edition. It offers the free edition plus more features.
- The Enterprise Premium Edition offers no. (2) plus more premium features.
There are two free editions.
Bear in mind that they both lack customer support and some features are very limited. However they do offer quite good value for personal projects or very small projects, open-source or not and usually not commercial.
- On-premise Community Edition
Ideal for personal projects or small teams
- One tool with full environment for software development (from idea to production)
- Can be used to manage private repositories (while GitHub charges for private repositories)
- No limitation on the number of users (while Atlassian’s BitBucket limits the free edition to 5 users only)
- No customer support. You can’t open tickets and ask the vendor for help
- You need Linux admin knowledge on how to install and setup the server (knowledge in Docker and containers is recommended too)
- You have to allocate a server (bare-metal or virtual)
- The Enterprise features (described below) are not included
- Free edition in the public cloud (named gitlab.com)
Ideal for private / small projects you don’t want to set up a server by yourself
- Same as the free on-premise edition above
- No customer support. You can’t open tickets or ask the vendor for help
- No SLA (Service Level Agreement) and no availability commitment
- No security commitment
- No performance commitment
- Space limitation (10 GB)
- Can be affected by DDOS and DNS attacks
- Upgrades (and their corresponding downtime) are done automatically and users can’t schedule (to more convenient time) or avoid updates
These cons can be addressed by using any of the paid editions.
Paid editions can be installed on-premise (at customer’s site) behind the firewall or on a secured private cloud.
There are two options here:
- Enterprise Edition Starter
This is the basic Enterprise edition, priced at $39 per user per year (or $3.25 monthly). This includes customer support with a response time of 1 business day, plus extra features, including:
- Full support of users and groups authentications with LDAP, Active Directory, Kerberos and Atlassian Crowd
- Full analytics (named Contribution Analytics)
- Audit log
- Multiple issue boards for a project (very useful for watching issues from some different perspectives – for instance if you have several teams on a given project and each team needs a different board)
- Global code search (it’s like ‘googling’ the code and it enables you to quickly find out code snippets)
- Super-powered search using Elasticsearch
- Full integration with Jenkins CI
- Branch Permissions by users (preventing unwanted git push and merge)
- Manage large binaries files with git annex
- Project importing from GitLab.com to your private GitLab instance
- New read-only user type (auditor)
(this is a partial list. Full list is available on the website right here)
- Enterprise Edition Premium
Priced at $199 per user per year (or $16 monthly), this edition offers a more rapid response time for customer support and 24/7 support. It includes all Enterprise Starter features listed above PLUS the following:
- GitLab Geo. This is a geographically replicated solution for when you have two GitLab sites and you have to accelerate performance.
- File locking mechanism (exclusively lock files to prevent merge problems)
- High Availability (HA) support, including active/active and active/passive solutions
- Getting assistance when upgrading GitLab server (by sharing screens)
You can install Enterprise Editions on your private servers (behind the firewall) or get it hosted on a private cloud. You can install this edition on bare-metal or as a virtual machine, and you can also install it as a Docker container.
To get a quote click here.
Private cloud is useful when you do not want to setup a server by yourself or you don’t have time to manage the IT infrastructures of GitLab application (we provide GitLab managed services that support private cloud).
Still have questions about the best edition for you? Contact us