GitLab

GitLab

Complete DevOps lifecycle management

4.6/5 (408 reviews)

GitLab Overview

GitLab is an integrated, open source DevOps lifecycle management platform for software development teams to plan, code, test, deploy and monitor product changes within a single application. GitLab allows users to streamline their collaborative workflows and visualize, prioritize, coordinate, and track progress using flexible project management tools.

GitLab helps streamline collaborative workflows whether a team uses Agile, Waterfall, or conversational development methods. Users are able to securely write and manage code and project data, and consolidate source code into a single DVCS that can be managed without disrupting the workflow. GitLab’s git repositories are provided with branching tools and access controls for a scalable, single source of truth for collaboration on projects and code.

Users are able to customize their approval workflow controls, and automatically test the quality of code. GitLab verification tools help users spot errors sooner while shortening feedback cycles with features such as built-in code review, code testing, code quality, and review apps. Users can manage custom container images with GitLab’s container registry, which provides users with enhanced security and access controls without third party add-ons.

Organizations can minimize complexity by building, testing, and releasing their code securely, whether deploying to one server, or thousands, using GitLab’s continuous delivery and deployment feature. Users can automate the entire workflow and customize everything from buildpacks to CI/CD. Best practice templates help users get started with minimal configuration. GitLab collects and displays performance metrics for deployed apps using Prometheus, allowing users to analyze shipping velocity and monitor application performance.

Pricing

Starting from
US$4,00/month
Pricing options
Free Trial
Open Source
Subscription
Value for money

Devices

Business size

S
M
L

Markets

United States

Supported Languages

English

GitLab Reviews

Overall rating
4.6/5
97% positive reviews
251
Excellent
143
Very good
14
Average
0
Poor
0
Terrible
Arnold A.

A complete tool to store your projects and configure your CI/CD

Used Daily for 6-12 months
Reviewed on 2019/08/07
Review Source: Capterra

I have great thoughts about GitLab my experience has been really good. I was really impressed when I started working with it and configured the first project there. I definitely recommend GitLab to anyone that wants to start a new project and doesn't want to use too many tools, GitLab has everything that you need to start.

Pros

I started using GitLab for an external project and I like the following:
1) Easy to work with and auto explanatory. Creating/configuring a new repository is really easy.
2) Great CI/CD implementation. Having the repository with built-in CI/CD is really convenient, you can have everything related to the build and deployment process saved along with your code. I have used bamboo and I really appreciate this feature, it might have its problems but it is really useful.
3) Unlimited private docker registry, you can have your own private registry for free. I cannot express how useful this is.
4) In order to help with the CI/CD process it allows the creation of tokens with access restrictions (read only), so you can use these tokens to download your code or your docker containers without having to provide your personal credentials.
5) It has its own task manager
6) It has free agents that are in charge of executing your builds/deploys so you don't have to provide your own resources.

Cons

1) Configuring build variables is really messy and it is not an ideal implementation. I haven't found a way to set different values for them depending on the branch, so configuring different environments is not too easy
2) Even though having your code with CI/CD is really convenient, it has some drawbacks. If you have an established continuous deployment process that you repeat in many projects and you want to change it (maybe a fix it or improve it) you will have to add that change to all your repositories and all the branches that you want to deploy. So it is a really good feature but it is not too flexible
3) The task manager is messy, and I didn't find a way to have a shared board.
4) It does not have too many software integrations, as I mentioned before I have used bamboo and I really like their integration with other software

Rating breakdown

Ease of Use
Customer Support

Likelihood to recommend

9.0/10
Istvan R.

Gitlab: A Feature-full alternative to Github

Used Daily for 2+ years
Reviewed on 2019/08/06
Review Source: SoftwareAdvice

We are utilizing gitlab to handle our code versioning and our continous integration and delivery pipeline. This includes our whole workflow from writting code to building it, testing it and deploying it to production.

Pros

- Excellent UI that is easy to understand: many of our developers are migrating for the first time from other software (github, bitbucket) and a constant comment is that the ui is intuitive and easy to understand compared to previous software. The transition is always smooth.
- Feature-full product: Gitlab offers a variety of features that I have found to be excellent and of high quality. The code-review process in gitlab is always smooth with the ability to resolve or re-open discussions, address specific comments or the whole of the discussion, the ability to suggest and even apply and commit code from the ui is also a huge plus. The IDE is decent and the file editor is also decent. The CI/CD integration with gitlab runners is smooth, the notification system is great. I get an email whenever a test fails. All from the gitlab ecosystem, i do not need to go to circleCi or some other provider for all of this, which allows the ui and experience to be consistent.

Cons

At this very moment there is no feature or issue that I have found to be detrimental to my experience.

Rating breakdown

Value for Money
Ease of Use

Likelihood to recommend

10.0/10
Damian N.

GitLab is the best for its CI

Used Daily for 2+ years
Reviewed on 2019/06/10
Review Source: Capterra

Pros

GitLab CI is by far the most valuable feature of GitLab. Travis CI was the first one to offer a YAML-file based build system - but it's GitLab CI to make pipelines very flexible and expressive. While Travis was okay for most popular languages in open source projects. GitLab made it possible to run enterprise-grade pipelines with many stages, each having multiple simultaneous jobs. This, plus git repository, Docker registry, and several other tools, making it a complete solution - starting from an early development cycle, through build, to deployment and monitoring thereof.

Cons

Several pages perform bad, e.g. pipelines list in big projects. Some pages don't have search and sorting. These are minor issues though.

Rating breakdown

Value for Money
Ease of Use
Customer Support

Likelihood to recommend

10.0/10
Verified Reviewer

Great Open Source Software!

Used Daily for 6-12 months
Reviewed on 2018/12/16
Review Source: Capterra

The overall experience was good. It's highly recommended for companies who want host their code in their own infra and are ready to maintain the code hosting software itself

Pros

I use the GitLab Community Edition (CE) and the first thing I love about it is it's Open Source! I am a believer of Open source software! In my company, we host our own instance of GitLab CE and it's been smooth. We use it for source code hosting and for CI/CD. Source code hosting has been great. CI/CD is nice too. GitLab has all the features required by a code hosting software - groups, groups within groups, repos, role based access control for members. Members can also be grouped with names - helpful to create a group for a team and add members to the group and give access to the team/group. It has forking, SSH/HTTPS git repo access, Notification/Watch repo features. It also has lots of integrations. We use slack a lot and we have integrations with slack which GitLab provides, and we have configured it to get notified for different things, starting from commit pushes to pipeline failures. We also use the GitLab pages for hosting the Wiki site for repos. It's pretty neat! The GitLab CI/CD has the concept of runners which run the CI/CD tasks/jobs. Runners have tags, and you can easily use the appropriate tag in the config to run the task in the appropriate runner. We use different runners for different things like, pushing to a Docker registry (requires special permissions), accessing a prod DB/application, running normal tasks (scripts) etc. All in all, it's quite good

Cons

Although GitLab has lots of features. I do have some complaints about it. I hope that newer versions will make my complaints obsolete! Starting with the CI/CD, it's quite good. But it lacks some features and flexibility which we expect in the upcoming versions. Features like one CI/CD pipeline triggering another pipeline (not present in CE, not sure about Enterprise Edition) and things like grouping jobs in a stage. Also, the CI/CD UI is not very good. It has glitches, there's no auto refresh in all the UIs to show the status of a job - if it's successful or if it failed. The job UI also isn't very great, like, if the job names or stage names are big, it becomes tough to read. Also, when the job log is very big, it reloads the page when the job finishes and truncates the output of the job and makes it available for download instead. This can be good or bad, based on the use case. For us, it was mostly not a soothing experience.

Rating breakdown

Value for Money
Ease of Use

Likelihood to recommend

8.0/10
Verified Reviewer

Great software wit a minimal but efficient design but can definitely use improvements

Used Daily for 1+ year
Reviewed on 2018/11/03
Review Source: Capterra

Best way to use it is to keep your gitlab organized is keeping pr's as functional as possible and not mashing 1000 changes into one pr. otherwise gitlab performance go down and so will the interest of the other people who review your merge request!!

Setting up gitlab to manage your software projects is child's play, and although the UI is minimal in design it which gets the job done but could definitely use some enhancements and that would make it a top tier no nonsense go-to-software-management-product.

Overall it is a great software. I am not aware of the quality of the customer service on the paid tier so can't comment on that. One can manage and maintain gitlab inhouse without needing any paid support.

I would recommend it without reservations to any and all software developing companies.

Pros

1. Free of cost
2. Highly efficient, does the job without uncertainty.
3. Never observed any downtime
4. Very frequent and proper updates to the software.
5. easy to maintain
6. can easily integrate with jenkins for Continuous Integration- Continuous Deployment.
7. Easy to setup and use, no support or setup or external teams required. Anybody with minimum computer skills can get this up and running.
8. easy integration with youtrack for issue tracking and merge requesting tracking

Cons

These are not very big cons, but I find them annoying and could definitely use improvement:
1. The edit description on an open merge request also shows up on the history. So If somebody were to make a 10 different changes to the title while keeping the
2. The code formatting in the description box is not too good. It can take several tries before getting it right.
3. There is no way of searching for something based on a line of text. For example if you were looking for a commit or a merge request but you only remember the
4. sometimes very challenging to go back and undo merges which are quite complex.
5. on a given pr, it shows icons of all the participants but doesn't say which participant did what... for example if 5 people have just viewed a pr and done nothing else even then it shows all of them as participants. It would be nice to have a feature which will only show activity by participant on every pr.
6. text based Search via ui is practically no existent. So if you search for something using a text which is part of a commit message, chances are it will not show up 100%.

Rating breakdown

Value for Money
Ease of Use

Likelihood to recommend

8.0/10

GitLab Pricing

Starting from
US$4,00/month
Pricing options
Free Trial
Open Source
Subscription
Value for money

Libre: $0

Starter: $4 per user, per month (billed annually)

Premium: $19 per user, per month (billed annually)

Ultimate: $99 per user, per month (billed annually)

GitLab Features

  • API
  • Access Control
  • Activity Tracking
  • Automatic Notifications
  • Drag & Drop Interface
  • Monitoring
  • Third Party Integration

  • Activity Dashboard
  • Alerts / Escalation
  • Application Integration
  • Auditing
  • Collaboration Tools
  • Customizable Reporting
  • Data Import/Export
  • Real Time Data
  • Real Time Monitoring
  • Real Time Reporting
  • Reporting & Statistics
  • SSL Security
  • Workflow Management

Additional information for GitLab

Key features of GitLab

  • Activity stream
  • Advanced global search & syntax search
  • Analytics
  • Application performance monitoring
  • Audit logs
  • Audit logs
  • Block secret file push
  • Branching
  • Browser performance testing
  • Built-in CI/CD
  • Built-in container registry
  • Burndown charts
  • Compliance
  • Confidential issues
  • Configurable issue closing pattern
  • Create and remove admins
  • Create issue from email
  • Create, search and view issues from chat
  • Custom domains for GitLab Pages
  • Custom notifications
  • Cycle analytics
  • Disaster recovery
  • Disaster recovery
  • Display merge request status for builds on Jenkins CI
  • Drag and drop tasks
  • Due dates for individual issues
  • Dynamic application security testing
  • Email all users of a project, group, or entire server
  • Enriched markdown support
  • Environments history
  • Epics
  • Git LFS 2.0 support
  • GitLab server monitoring
  • Global Search API
  • Global search API
  • Group issue boards
  • Group milestones
  • Group webhooks
  • Image discussions
  • Innersourcing
  • Integrated Git-powered wikis
  • Issue board focus mode
  • Issue boards
  • Issue tracker
  • Issue weights
  • Issue weights
  • Issues and merge requests templates
  • Kerberos user authentication
  • Kerberos user authentication
  • Labels
  • Mattermost integration
  • Move issues between projects
  • Multi-project pipeline graphs
  • Multiple LDAP / AD server support
  • Multiple LDAP server support
  • Multiple approvals in code review
  • Multiple assignees for issues
  • Preview changes with review apps
  • Project templates
  • Protected tags
  • Publish static websites for free
  • Push rules
  • Push rules
  • Remote repository mirroring
  • Restrict push and merge access to certain users
  • Roadmaps
  • Scheduled triggering of pipelines
  • Service desk
  • Squash and merge
  • Time tracking
  • To-dos

Benefits

  • GitLab streamlines all collaborative workflows, whether a team uses Waterfall, Agile, or Conversational Development.

  • Keep track of the progress and activity across projects and get performance metrics for deployed apps through Prometheus.

  • GitLab provides a scalable, single source of truth for projects and code with git repositories that come complete with branching tools and access controls.

  • Spot errors faster and shorten feedback cycles with Gitlab's built-in code review, code testing, code quality, and review apps.

  • Release code confidently and securely, and minimize complexity with GitLab's built-in continuous delivery.

  • GitLab FAQs

    Below are some frequently asked questions for GitLab.

    Q. What type of pricing plans does GitLab offer?

    GitLab offers the following pricing plans:

    Starting from: US$4,00/month

    Pricing model: Open Source, Subscription

    Free Trial: Not Available

    Libre: $0

    Starter: $4 per user, per month (billed annually)

    Premium: $19 per user, per month (billed annually)

    Ultimate: $99 per user, per month (billed annually)

    Q. What are the main features of GitLab?

    GitLab offers the following features:

    • Activity stream
    • Advanced global search & syntax search
    • Analytics
    • Application performance monitoring
    • Audit logs
    • Audit logs
    • Block secret file push
    • Branching
    • Browser performance testing
    • Built-in CI/CD
    • Built-in container registry
    • Burndown charts
    • Compliance
    • Confidential issues
    • Configurable issue closing pattern
    • Create and remove admins
    • Create issue from email
    • Create, search and view issues from chat
    • Custom domains for GitLab Pages
    • Custom notifications
    • Cycle analytics
    • Disaster recovery
    • Disaster recovery
    • Display merge request status for builds on Jenkins CI
    • Drag and drop tasks
    • Due dates for individual issues
    • Dynamic application security testing
    • Email all users of a project, group, or entire server
    • Enriched markdown support
    • Environments history
    • Epics
    • Git LFS 2.0 support
    • GitLab server monitoring
    • Global Search API
    • Global search API
    • Group issue boards
    • Group milestones
    • Group webhooks
    • Image discussions
    • Innersourcing
    • Integrated Git-powered wikis
    • Issue board focus mode
    • Issue boards
    • Issue tracker
    • Issue weights
    • Issue weights
    • Issues and merge requests templates
    • Kerberos user authentication
    • Kerberos user authentication
    • Labels
    • Mattermost integration
    • Move issues between projects
    • Multi-project pipeline graphs
    • Multiple LDAP / AD server support
    • Multiple LDAP server support
    • Multiple approvals in code review
    • Multiple assignees for issues
    • Preview changes with review apps
    • Project templates
    • Protected tags
    • Publish static websites for free
    • Push rules
    • Push rules
    • Remote repository mirroring
    • Restrict push and merge access to certain users
    • Roadmaps
    • Scheduled triggering of pipelines
    • Service desk
    • Squash and merge
    • Time tracking
    • To-dos

    Q. Who are the typical users of GitLab?

    GitLab has the following typical customers:

    Large Enterprises, Mid Size Business, Small Business

    Q. What languages does GitLab support?

    GitLab supports the following languages:

    English

    Q. What type of pricing plans does GitLab offer?

    GitLab has the following pricing plans:

    Open Source, Subscription

    Q. Does GitLab support mobile devices?

    GitLab supports the following devices:

    iPhone, iPad

    Q. What other apps does GitLab integrate with?

    GitLab integrates with the following applications:

    Atolia, Forecast, GitPrime, Hubstaff, Hygger, LambdaTest, Marker.io, Tickd, Trello, craft

    Q. What level of support does GitLab offer?

    GitLab offers the following support options:

    FAQs, Forum, Knowledge Base