Get Advice Icon

Need advice about which tool to choose?Ask the StackShare community!

GitLab
GitLab

11.1K
8.7K
+ 1
2.1K
Perforce
Perforce

31
34
+ 1
8
Add tool

GitLab vs Perforce: What are the differences?

GitLab: Open source self-hosted Git management software. GitLab offers git repository management, code reviews, issue tracking, activity feeds and wikis. Enterprises install GitLab on-premise and connect it with LDAP and Active Directory servers for secure authentication and authorization. A single GitLab server can handle more than 25,000 users but it is also possible to create a high availability setup with multiple active servers; Perforce: Self-hosted Version Control Software. Visibility, access control, workflow and code management for Git environments. Flexibility of collaborating on the same codebase and code reviews using any combination of Perforce and Git workflows and tools without compromise.

GitLab and Perforce belong to "Code Collaboration & Version Control" category of the tech stack.

"Self hosted" is the top reason why over 451 developers like GitLab, while over 2 developers mention "Great for Enterprise level use" as the leading cause for choosing Perforce.

GitLab is an open source tool with 20.1K GitHub stars and 5.33K GitHub forks. Here's a link to GitLab's open source repository on GitHub.

- No public GitHub repository available -

What is GitLab?

GitLab offers git repository management, code reviews, issue tracking, activity feeds and wikis. Enterprises install GitLab on-premise and connect it with LDAP and Active Directory servers for secure authentication and authorization. A single GitLab server can handle more than 25,000 users but it is also possible to create a high availability setup with multiple active servers.

What is Perforce?

Visibility, access control, workflow and code management for Git environments. Flexibility of collaborating on the same codebase and code reviews using any combination of Perforce and Git workflows and tools without compromise.
Get Advice Icon

Need advice about which tool to choose?Ask the StackShare community!

Why do developers choose GitLab?
Why do developers choose Perforce?

Sign up to add, upvote and see more prosMake informed product decisions

    Be the first to leave a con
    What companies use GitLab?
    What companies use Perforce?

    Sign up to get full access to all the companiesMake informed product decisions

    What tools integrate with GitLab?
    What tools integrate with Perforce?

    Sign up to get full access to all the tool integrationsMake informed product decisions

    What are some alternatives to GitLab and Perforce?
    GitHub
    GitHub is the best place to share code with friends, co-workers, classmates, and complete strangers. Over three million people use GitHub to build amazing things together.
    Bitbucket
    Bitbucket gives teams one place to plan projects, collaborate on code, test and deploy, all with free private Git repositories. Teams choose Bitbucket because it has a superior Jira integration, built-in CI/CD, & is free for up to 5 users.
    Jenkins
    In a nutshell Jenkins CI is the leading open-source continuous integration server. Built with Java, it provides over 300 plugins to support building and testing virtually any project.
    Gogs
    The goal of this project is to make the easiest, fastest and most painless way to set up a self-hosted Git service. With Go, this can be done in independent binary distribution across ALL platforms that Go supports, including Linux, Mac OS X, and Windows.
    Git
    Git is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency.
    See all alternatives
    Decisions about GitLab and Perforce
    Michael Kelly
    Michael Kelly
    Senior Software Engineer at StackShare · | 14 upvotes · 196.5K views
    atACK FoundryACK Foundry
    GitLab
    GitLab
    GitHub
    GitHub
    GitLab CI
    GitLab CI
    GitLab Pages
    GitLab Pages
    Bitbucket
    Bitbucket
    #OpenSourceCloud

    I use GitLab when building side-projects and MVPs. The interface and interactions are close enough to those of GitHub to prevent cognitive switching costs between professional and personal projects hosted on different services.

    GitLab also provides a suite of tools including issue/project management, CI/CD with GitLab CI, and validation/landing pages with GitLab Pages. With everything in one place, on an #OpenSourceCloud GitLab makes it easy for me to manage much larger projects on my own, than would be possible with other solutions or tools.

    It's petty I know, but I can also read the GitLab code diffs far more easily than diffs on GitHub or Bitbucket...they just look better in my opinion.

    See more
    Tim Abbott
    Tim Abbott
    Founder at Zulip · | 18 upvotes · 161.3K views
    atZulipZulip
    GitHub
    GitHub
    GitLab
    GitLab

    I have mixed feelings on GitHub as a product and our use of it for the Zulip open source project. On the one hand, I do feel that being on GitHub helps people discover Zulip, because we have enough stars (etc.) that we rank highly among projects on the platform. and there is a definite benefit for lowering barriers to contribution (which is important to us) that GitHub has such a dominant position in terms of what everyone has accounts with.

    But even ignoring how one might feel about their new corporate owner (MicroSoft), in a lot of ways GitHub is a bad product for open source projects. Years after the "Dear GitHub" letter, there are still basic gaps in its issue tracker:

    • You can't give someone permission to label/categorize issues without full write access to a project (including ability to merge things to master, post releases, etc.).
    • You can't let anyone with a GitHub account self-assign issues to themselves.
    • Many more similar issues.

    It's embarrassing, because I've talked to GitHub product managers at various open source events about these things for 3 years, and they always agree the thing is important, but then nothing ever improves in the Issues product. Maybe the new management at MicroSoft will fix their product management situation, but if not, I imagine we'll eventually do the migration to GitLab.

    We have a custom bot project, http://github.com/zulip/zulipbot, to deal with some of these issues where possible, and every other large project we talk to does the same thing, more or less.

    See more
    Bitbucket
    Bitbucket
    GitLab
    GitLab
    GitHub
    GitHub

    Bitbucket provides 5 private repositories for free that is I believe the best feature. GitLab seems very simmilar to GitHub. The only reason I've choosen GitHub is its popularity. It seems faster than GitLab, uglier than Bitbucket and featured as others. The best open source projects are hosted on GitHub. Many applications are integrated with GitHub like my favourite #GitKraken.

    See more
    Jaime Leonardo Suncin Cruz
    Jaime Leonardo Suncin Cruz
    GitHub
    GitHub
    GitLab
    GitLab

    Keep with GitHub if you feel comfortable, If you want to switch to other keep in mind the change of mindset and you will need time to adapt, i'm not saying that GitLab is bad or difficult just the opposite, but it can be overwhelming because it have more integrated features (I love this) than GitHub , what it means more configs available that you can mess up.

    See more
    Jona Koudijs
    Jona Koudijs
    Infrastructure Engineer at True · | 5 upvotes · 3.6K views
    GitLab
    GitLab

    I use GitLab because of the tight integration with Gitlab CI. I noticed that having the entire build chain integrated into one platform, makes it easier for developers and infrastructure engineers to work with automated testing and deploying even though not everybody has the same amount of experience with it.

    See more
    Logan Campos
    Logan Campos
    Computer Programmer at cryptosec.dev · | 10 upvotes · 44.3K views
    GitLab
    GitLab
    GitHub
    GitHub

    As an former administrator for GitLab enterprise I can say for closed source development it is an amazing tool to have. It does however have limits. For starters you will need to bother your unix administrators to assign a license to you. And after that happens the same guys start getting cranky if you use git