GitLab EEP vs. GitHub Enterprise

GitLab compared to other tools

GitLab is the next-generation development toolset that covers 100% of your software development lifecycle.

GitLab unifies chat, issues, code review, CI, CD, and cycle analytics into a single UI. Unlike other source code management tools that only support a portion of your development lifecycle, GitLab delivers a unified experience for every step of the development lifecycle providing the most efficient approach to software delivery. So no matter what line of business you're in, GitLab gives you the edge to compete, innovate, and win.

FEATURES

Flexible permissions

Set permissions according to people's role, rather than either read or write access to a repository. Don't share the source code with people that only need access to the issue tracker.

See the various roles

Innersourcing

Internal projects in GitLab allow you to promote innersourcing of your internal repositories.

Find out more about innersourcing

Group-level milestones

View all the issues for the milestone you’re currently working on across multiple projects.

Learn more about group-level milestones

New features every month

GitLab is updated with new features and improvements every month on the 22nd.

One integrated tool

Other tools require the integration of multiple 3rd party tools to complete the software development lifecycle. GitLab has a completely integrated solution that covers the entire development lifecycle.

Access to the server

You have complete control of the server/instance, so you can install additional software (intrusion detection, performance monitoring, etc.) and view log files on the server itself. GitLab's advanced log system means everything gets logged and provides you with easy access to a wealth of log file information.

Learn more about logging

Runs on metal

GitLab can run on bare metal servers where you can have control of the disk I/O, CPU, RAM, etc. Scale horizontally without an issue.

Read about the different ways to install GitLab

Highly Available setups

For mission critical releases, you cannot afford downtime. Split your app servers, database, etc., into multiple instances and work in read-only mode during backups.

More information on High Availability

Run your own software on your instance

You are free to run your own software on the instance that GitLab is running on. Have your own intrusion detection system? No problem.

Read about the different ways to install GitLab

Use your configuration management software

You can use your choice of configuration management software, from Puppet, Chef, Ansible for quick and straightforward implementation.

Read about the different ways to install GitLab

Use standard Unix tools for maintenance and monitoring

Use the tools you know for monitoring and maintenance, whether they're standard or your own. GitLab doesn't restrict you.

Read about the different ways to install GitLab

Powerful AD / LDAP integration

Sync groups, manage SSH-keys, manage permissions, authentication and more. You can manage an entire GitLab instance through the LDAP / AD integration.

More information about AD / LDAP integration

Multiple approvals in code review

In GitLab, to ensure strict code review, you can require a specific number of approvals on a merge request by different users before being able to merge it. You can undo an approval by removing it after the fact.

Approvals Documentation

Ease of migration from other providers

GitLab lets you easily migrate all repos, issues and merge request data from your previous provider.

Learn how to migrate your projects to GitLab

Confidential Issues

Keep your information secure with Confidential Issues. With GitLab, you can create confidential issues visible only for project members with Reporter access level or above.

Learn more about Confidential Issues

Group milestones

Create and manage milestones across projects, from group level.

Learn more about Group milestones

Related issues

Explicitly mark issues as related and track their status.

Learn more about Related Issues

Access to and ability to modify source code

GitLab Enterprise Edition is publicly readable, meaning you can scan or modify the code to meet your security and development needs. The code used by most other providers is proprietary, meaning you cannot edit or view the source code.

Read the GitLab Enterprise Edition license.

A comprehensive API

GitLab provides APIs for most features, allowing developers to create deeper integrations with the product.

Read our API Documentation

Issue Weights

GitLab lets you manage issues using Agile practices by setting the weight of an issue.

Read our Issue Weights documentation

Burndown Charts

GitLab provides Burndown Charts as part of Milestones. This allows users to better track progress during a sprint or while working on a new version of their software.

Read our Burndown Chart Documentation

Search files with fuzzy file finder

GitLab provides a way to search a file in your repository in one keystroke.

Read about the file finder in our documentation

Multiple assignees for issues

Assign more than one person to an issue at a time.

Read our Multiple Assignees Documentation

Squash and merge

Combine commits into one so that main branch has a simpler to follow and revert history.

Learn more about squash and merge

Remote repository mirroring

Mirror a repository from elsewhere on your local server.

Learn more about repository mirroring

Export issues as CSV

Issues can be exported as CSV from GitLab and are sent to your default notification email as an attachment.

Learn more about exporting issues as CSV

Granular user roles and flexible permissions

Manage access and permissions with five different user roles and settings for external users. Set permissions according to people's role, rather than either read or write access to a repository. Don't share the source code with people that only need access to the issue tracker.

Learn more about User Roles