Confluence vs GitLab: What are the differences?
Confluence: One place to share, find, and collaborate on information. Capture the knowledge that's too often lost in email inboxes and shared network drives in Confluence instead – where it's easy to find, use, and update; 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.
Confluence belongs to "Project Management" category of the tech stack, while GitLab can be primarily classified under "Code Collaboration & Version Control".
Some of the features offered by Confluence are:
On the other hand, GitLab provides the following key features:
- Manage git repositories with fine grained access controls that keep your code secure
- Perform code reviews and enhance collaboration with merge requests
- Each project can also have an issue tracker and a wiki
"Wiki search power" is the top reason why over 88 developers like Confluence, while over 451 developers mention "Self hosted" as the leading cause for choosing GitLab.
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.
According to the StackShare community, GitLab has a broader approval, being mentioned in 1234 company stacks & 1479 developers stacks; compared to Confluence, which is listed in 1172 company stacks and 655 developer stacks.
What is Confluence?
What is GitLab?
Need advice about which tool to choose?Ask the StackShare community!
Sign up to add, upvote and see more prosMake informed product decisions
What are the cons of using Confluence?
Sign up to add, upvote and see more consMake informed product decisions
Sign up to get full access to all the companiesMake informed product decisions
Sign up to get full access to all the tool integrationsMake informed product decisions
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.
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.
We use Sonatype Nexus to store our closed-source java libraries to simplify our deployment and dependency-management. While there are many alternatives, most of them are expensive ( GitLab Enterprise ), monilithic ( JFrog Artifactory ) or only offer SaaS-licences. We preferred the on-premise approach of Nexus and therefore decided to use it.
We exclusively use the Maven-capabilities and are glad that the modular design of Nexus allows us to run it very lightweight.
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.
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.
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.
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 LFS(Large File Storage) or manage a couple repos about ~100MBish. if you fork open source efforts remember to git clone --depth 1 ! As a free user of GitHub , I don't get crazy CI pipelines or crazy project management tools. I also don't need it !
I installed Gogs after a few repos I planned to use on GitHub disappeared without explanation, and after Microsoft's acquisition of same, it made me think about the over-centralization of community-developed software. A self-hosted solution that enables easy point-and-click mirroring of important repositories for my projects, both in-house and 3rd-party, ensures I won't be bitten by upstream catastrophes. (So far, Microsoft's stewardship has been fine, but always be prepared). It's also a very nice way to host one's own private repos before they're ready for prime-time on github.
Gogs is written in Go and is easy to install and configure, much more so than GitLab. The only major feature I wish it had is an integrated code review tool, but the web plugin hypothes.is https://stackshare.io/hypothes-is/hypothes-is actually is quite suitable as a code review tool. Set up a group for each code review, and just highlight lines to add comments in pull request pages of Gogs.
We use GitHub because it's the default go-to place for the Free software community. Currently, Github is enjoying the network effect: you write code there because everyone writes there code there, so this choice was less of a choice than "what we all end up doing".
Personally, I prefer GitLab for its bundled-in tools like CI, boards, packaging, and Docker repo, but so long as the vast majority of talented nerds out there are on Github, that's where Paperless will be.
We were using a hosted version of Redmine to track defects and user stories originally. We migrated to Jira.
Jira was an easy decision for a number of reasons:
- It's much more "Scrum ready" straight out of the box
- It's so much easier to keep a track of progress (I love the reporting)
- It natively encourages you to adhere to Scrum/Agile/Kanban practices
- Atlassian has a fantastic DevOps ecosystem when considering the likes of Confluence and Bamboo etc
- So many integrations!
- Its UI is so intuitive which makes it an absolute pleasure to use!
I know there are alot of other tools in this space but not even considering anything else at the moment. Love Jira!
I use GitHub because it's the coolest kid on the block for open source. Searching for repos you need/want is easy.
Especially with the apache foundation moving their workloads to them, unlimited private repos, and a package registry on the way, they are becoming the one stop shop for open source needs.
I'm curious to see how the GitHub Sponsors(patreon for developers) plays out, and what it'll do for open source. Hopefully, they design it in a way where it's not abused by big tech to "plant" developers that look like they're building open source when they're actually building proprietary tools.
We're using Git through GitHub for public repositories and GitLab for our private repositories due to its easy to use features. Docker and Kubernetes are a must have for our highly scalable infrastructure complimented by HAProxy with Varnish in front of it. We are using a lot of npm and Visual Studio Code in our development sessions.
A bit difference in GitHub and GitLab though both are Version Control repository management services which provides key component in the software development workflow. A decision of choosing GitHub over GitLab is major leap extension from code management, to deployment and monitoring alongside looking beyond the code base hosting provided best fitted tools for developer communities.
- Authentication stages - With GitLab you can set and modify people’s permissions according to their role. In GitHub, you can decide if someone gets a read or write access to a repository.
- Built-In Continuous Integrations - GitLab offers its very own CI for free. No need to use an external CI service. And if you are already used to an external CI, you can obviously integrate with Jenkins, etc whereas GitHub offers various 3rd party integrations – such as Travis CI, CircleCI or Codeship – for running and testing your code. However, there’s no built-in CI solution at the moment.
- Import/Export Resources - GitLab offers detailed documentation on how to import your data from other vendors – such as GitHub, Bitbucket to GitLab. GitHub, on the other hand, does not offer such detailed documentation for the most common git repositories. However, GitHub offers to use GitHub Importer if you have your source code in Subversion, Mercurial, TFS and others.
Also when it comes to exporting data, GitLab seems to do a pretty solid job, offering you the ability to export your projects including the following data:
- Wiki and project repositories
- Project uploads
- The configuration including webhooks and services
- Issues with comments, merge requests with diffs and comments, labels, milestones, snippets, and other project entities.
GitHub, on the other hand, seems to be more restrictive when it comes to export features of existing GitHub repositories. * Integrations - #githubmarketplace gives you an essence to have multiple and competitive integrations whereas you will find less in the GitLab.
So go ahead with better understanding.
This is my stack in Application & Data
My Utilities Tools
Google Analytics Postman Elasticsearch
My Devops Tools
Git GitHub GitLab npm Visual Studio Code Kibana Sentry BrowserStack
My Business Tools
You cannot get easier setup and deployment with GitLab. The documentation is huge and many common use cases are covered. It has a Community Edition (CE, free, 100% open source) and an Enterprise Edittion (EE, see pricing). The CE is more than good enough. Although in the entreprise world, the EE is much better suited if, for instance, LDAP is needed. There is a Web UI that allows people to version their work without too much hassle. If you are a developer and have worked with git before this is really easy.
All ideas and knowledge that needs to be elaborated or shared is done in this wiki. With plugins for create embedded prototypes.
Also is part of the development processes to create requisites and other artefacts.
It's main use is in the development processes, it could be used to create manuals and software documentation as well, but is used more as a collaboration enterprise tool.
Als einer der größten Konkurrenten zu GitHub und BitBucket, stellt GitLab eine verlässliche Alternative dar. Als private GitLab Instanz oder als Service bietet GitLab alle Features die wir benötigen und das völlig Kostenfrei in der Community Edition. Hier liegen alle unsere Repositories.
All of our (Engineering) knowledge is in Confluence. We document our thinking, our architecture, support recipes, trip notes, anything and everything. It's very important in a remote setting, to be have this type of knowledge store.
Gitlab offers us a self-hosted replacement for Github and even more than we were expecting from it. All of our code is hosted in our private GitLab-instance, that also hosts our artifacts and is used to deploy them into production.
Our self hosted gitlab service provides us with a private and secure environment for developing and testing our internal software. All of our dockerfiles, source code and configuration files for our infrastructure are stored here.
GitLab is our main Git server, housed on a separate box inside our VPN, it's diverse features and sandbox-support allows it to be an extremely good way to secure your source code.
GitLab is a web-based Git repository manager with wiki and issue tracking features, using an open source license, developed by GitLab Inc. The software
We use Confluence for specifications and knowledge sharing. We chose Confluence over other wikis primarily because of its integration with JIRA
Collaborate on project documentation, functional specs, walkthroughs, development standards, coding standards etc.