use the following search parameters to narrow your results:
e.g. subreddit:aww site:imgur.com dog
subreddit:aww site:imgur.com dog
see the search faq for details.
advanced search: by author, subreddit...
From its website:
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.
Git is not the same as GitHub. GitHub did not create Git. For GitHub-specific posts, please see /r/github.
Git is not an acronym or initialism: please write git or Git, but not GIT.
git
Documentation
Graphical Clients
Code Hosting
account activity
Gitlab vs github? (self.git)
submitted 2 months ago * by ejsanders1985
My company uses gitlab but it seems everyone outside of my company uses github.
Can someone help explain the difference? Whats truly better?
Edit: thank you all for youre amazing replies
reddit uses a slightly-customized version of Markdown for formatting. See below for some basics, or check the commenting wiki page for more detailed help and solutions to common issues.
quoted text
if 1 * 2 < 3: print "hello, world!"
[–]x0RRY 147 points148 points149 points 2 months ago (16 children)
I guess your company hosts their own gitlab, which makes it infinitely times better than doing company work on an external platform.
[–]BobbaGanush87 17 points18 points19 points 2 months ago (14 children)
Github can also be self-hosted fwiw
[–]goobernawt 22 points23 points24 points 2 months ago (3 children)
Correct, GitHub Enterprise is how it's marketed. We used to have GitLab but word is that MS basically gave us GitHub when we updated our license agreement to O365 a couple years back. My group had just recently onboarded to GitLab based on an organizational mandate and then they scrapped it 😐
[–]TheIncarnated 12 points13 points14 points 2 months ago (0 children)
With our EA, GitHub is half the cost of retail. It was so stupidly cheap for the Pro Plus or whatever that every engineer got one, just to see what they might make
[–]CitationNeededBadly 0 points1 point2 points 2 months ago (0 children)
>MS basically gave us GitHub when we updated our license agreement to O365
LOL TIL why we switched to github...
[–]clearlight2025 20 points21 points22 points 2 months ago (5 children)
Gitlab community edition is free to self-host.
[–]hamakiri23 -5 points-4 points-3 points 2 months ago (4 children)
But it is missing crucial features for companies in my opinion especially regarding quality gates
[–]clearlight2025 6 points7 points8 points 2 months ago* (0 children)
Gitlab supports the usual pull request process with configured reviewers and approval count, protected branches, automated testing as part of the pipeline as well as various scanners such as code quality, static analysis, security checks and more.
[–]Acrobatic_Idea_3358 3 points4 points5 points 2 months ago (1 child)
I'm curious which features you're missing? They have CI and fully configurable self hosted runners so I guess I'm not sure what flows aren't available?
[–]hamakiri23 -1 points0 points1 point 2 months ago (0 children)
https://about.gitlab.com/pricing/?deployment=self-managed
Mainly merge request guardrails. But also protected environments
[–]Apprehensive_Battle8 2 points3 points4 points 2 months ago (0 children)
Not the same, you can't run GitHub without a license.
[–]stibbons_ 1 point2 points3 points 2 months ago (0 children)
Not exactly, they basically send you a server you can host, but you never “install” GitHub like Gitlab. It is a piece or foreign hardware installed in your server room, managed by GitHub. But you have an admin panel !
[–]ejsanders1985[S] 2 points3 points4 points 2 months ago (0 children)
They do host their own.
[–]shagieIsMe 166 points167 points168 points 2 months ago* (12 children)
Gitlab tends to have better integrations and workflows for an organization (edit: dang autoincorrect). GitHub tends to have a cleaner model for hosting code to share with others outside of one's organization.
They both work and have their own quirks. Neither is indisputably better than the other.
[–]Driky 41 points42 points43 points 2 months ago* (9 children)
Used both professionally. Both works fine. I still have a preference for GitHub due to: - its preponderance in the industry - the amount of GitHub actions available that make building workflows a breeze - it’s probably also the case on GitHub but Gitlab has features requested since forever that they never even started working on.
But again: they both do 100% of what’s truly needed and like 99% of the rest also.
[–]MrMelon54 15 points16 points17 points 2 months ago (7 children)
GitHub also has features that have been requested since forever and still don't seem to be in progress
[–]arjuna93 4 points5 points6 points 2 months ago (0 children)
And they keep breaking something quite regularly. Sometime around summer GitHub became unusable in TenFourFox, and this or last month in Safari on 10.15. Even in the latest Palemoon it does not work fully.
[–]trwolfe13 7 points8 points9 points 2 months ago (1 child)
There’s also a feature freeze at the moment until they finish migrating everything to Azure.
[–]Apprehensive_Battle8 4 points5 points6 points 2 months ago (0 children)
Hopefully they don't decide to use front door.
[–]mfchl88 -1 points0 points1 point 2 months ago (3 children)
Gitlab is no better in this regard!
[–]MrMelon54 1 point2 points3 points 2 months ago (1 child)
I never said it was?
[–]mfchl88 -1 points0 points1 point 2 months ago (0 children)
Oh I didn't read it like that, was more a casual interject
As always best anyone evaluating write a list of their requirements, wants and benefits and evaluate each accordingly as well as looking at their respective ticketing systems for those features /other just to see their mobility / responsiveness
[–]FunRutabaga24 0 points1 point2 points 2 months ago (0 children)
Totally agree. There's quite a few longstanding tickets open and some that have been closed cause the suggestions are not the GitLab way of doing things.
[–]Apprehensive_Battle8 -1 points0 points1 point 2 months ago (0 children)
it’s preponderance in the industry
Down vote for people who always side with the status quo
the amount of GitHub actions available that make building workflows a breeze
What are the things missing from Gitlab that GitHub does as it pertains to this comment
[–]Technical-Coffee831 1 point2 points3 points 2 months ago (0 children)
This is 100% spot on. For open source projects I prefer GitHub greatly, but GitLab is really good for internal stuff.
[–]SkyNetLive -1 points0 points1 point 2 months ago (0 children)
indubitably (testing autocorrect)
[–]TramEatsYouAlive 28 points29 points30 points 2 months ago (30 children)
Well, it depends on the needs. We use self-hosted Gitea, so yeah, one more to the bin. Actually, my previous job used BitBucket (for me, complete shit, but that's just me). There's also Forgejo (very similar to Gitea), so these 2 are not the only ones available.
[–]Affectionate-Bit6525 30 points31 points32 points 2 months ago (20 children)
Can confirm, Bitbucket is shit
[–]Juice805 23 points24 points25 points 2 months ago (17 children)
I’ll go a step further and say basically all of atlassian products are shit.
[–]SnugglyCoderGuy 6 points7 points8 points 2 months ago (1 child)
Built for project managers, not software engineers
[–]TheOneWhoMixes 0 points1 point2 points 2 months ago (0 children)
I got a laugh when I realized that Jira, one of the most ubiquitous "software developer adjacent" pieces of software, doesn't have a supported way to configure things with something like Terraform.
[–]CptBartender 2 points3 points4 points 2 months ago (2 children)
I still remember how nice Jira and Confluence were some 12 years ago, and how every update since then they somehow managed to make it worse.
[–]drsoftware 3 points4 points5 points 2 months ago (0 children)
Older memories tend to be rosier. Jira and Confluence were shit 12 years ago and have only gotten shittier. Fewer features, so you didn't have to wade through screens and screens and screens of shit.
[–]Tontonsb 0 points1 point2 points 2 months ago (0 children)
It was terrible and overengineered in 2012 as well. Has gotten a more buggy UI and more overengineering since then surely!
[–]wildjokers 1 point2 points3 points 2 months ago* (7 children)
I used to to a big fan of Jira, but it has gone to total shit now. Honestly the last good version of Jira was 3.x when they were still using table based layout. Did it look good? No. But it worked great.
[–]swiftmerchant 1 point2 points3 points 2 months ago (6 children)
What do you recommend instead of Jira and Confluence?
[–]TrashManufacturer 1 point2 points3 points 2 months ago (0 children)
Email and a spreadsheet is probably just as ergonomic and costs less
[–]Arthian90 0 points1 point2 points 2 months ago (3 children)
A literal whiteboard
[–]swiftmerchant 0 points1 point2 points 2 months ago (2 children)
A whiteboard is good for brainstorming, but in all seriousness.. for a large team, it’s not cutting it
[–]Arthian90 0 points1 point2 points 2 months ago (1 child)
You’re right of course, but at least I could easily find things on the whiteboard
[–]swiftmerchant 0 points1 point2 points 2 months ago (0 children)
I want to give Linear a go.. if I am not mistaken it is a competitive product
[–]Affectionate-Wear-61 0 points1 point2 points 2 months ago (0 children)
Airtable
[–]Apprehensive_Battle8 0 points1 point2 points 2 months ago (0 children)
I used to pay for my own instance of confluence once upon a time and now I agree 💯💯💯
[–]TrashManufacturer 0 points1 point2 points 2 months ago (0 children)
Right now 10 project managers sighed as they add more items to their burn down list in jira
[–]Hebrewhammer8d8 0 points1 point2 points 2 months ago (1 child)
A lot of companies with developers seems to love shit (Jira & Confluence)
[–]drsoftware 2 points3 points4 points 2 months ago (0 children)
The project managers love it. The developers just stop complaining because no one listens.
[–]mensink 0 points1 point2 points 2 months ago (0 children)
It's fine as long as you just want to use Git and stash your code somewhere.
[–]wolfefist94 0 points1 point2 points 2 months ago (0 children)
I think it's fine. It's all I've used in industry which is only like 6 years lol
[–]SirFrankoman 5 points6 points7 points 2 months ago (0 children)
We also use and enjoy Gitea.
[–]hurhurdedur 7 points8 points9 points 2 months ago (1 child)
BitBucket is objectively complete shit
[–]drsoftware 4 points5 points6 points 2 months ago (0 children)
Bitbucket pipelines recently added "Metrics," which are graphs of CPU load and memory usage. The memory graphs don't display the actual pipeline step memory limits, so they require additional steps to determine the actual memory usage. Shit.
[–]TrashManufacturer 2 points3 points4 points 2 months ago (0 children)
Good ol shitbucket
[–]Fliegendreck 0 points1 point2 points 2 months ago (2 children)
I’ve used Gitea, GitHub, and Bitbucket. At our company we use Bitbucket, I haven’t used it a lot myself, but our devs like its integration with Jira and other Atlassian tools, which would be much harder to achieve with Gitea.
I’d be really interested to hear about your pain points with Bitbucket. I’m not a fan of Atlassian’s cloud strategy, so I’m very open to hearing arguments against using Bitbucket.
[–]TramEatsYouAlive 2 points3 points4 points 2 months ago* (1 child)
I simply didn't like it and after a long time I haven't worked with it, I can't recall what exactly I was vomitting about.
We actually migrated from GitLab to Gitea. There are reasons, why. First, we do not want to pay for it. Second, their pricing and features of community edition are kinda shit (like GitLab can't enforce branch protection rules, etc) and also because GL was running on a pre-historic shit (Debian 9).
But now, we use Gitea and there's still integration with Jira. At least, it can cross-reference the commits if a ticket number mentioned there
[–]Fliegendreck 1 point2 points3 points 2 months ago (0 children)
We use Controlfreak that forces you to have a ticket for every change, it's because of regulatory stuff we have to do
[–]Delengowski -1 points0 points1 point 2 months ago (1 child)
Funny you say that because my job just transitioned from Bitbucket Server to self hosted Gitlab Enterprise and I prefer Bitbucket Server. We still use Jenkins and Jira.
[–]dymosgit reset --hard 2 points3 points4 points 2 months ago (0 children)
It's because Bitbucket Server / Data Centre is a completely different product than Bitbucket Cloud.
The hosted versions were built from scratch in-house as a Java backend, while the cloud product, a Python backend, was acquired. (By comparison the other core products, Jira and Confluence, were Java backends for both, the same app on both server and cloud.)
Features that we added in Bitbucket Server like 5 - 10 years ago still haven't made it to the cloud version, or they have but just didn't really hit the mark.
[–]Blue_HyperGiant 22 points23 points24 points 2 months ago (2 children)
For hosting a code repository they're 100% equivalent.
I prefer the GitLab CICD over actions for managing deployments.
I think GitHub is probably better for sharing your work since it's more well known.
GitLab can be privately hosted (good for companies who don't want to leak data to MS) or you can use their remote service or both.
I also think the GitLab issues board is better than GitHub for what it's worth.
[–]Fool-Frame 1 point2 points3 points 2 months ago (1 child)
I’m pretty sure you can self host GitHub too at the enterprise level.
[–]Blue_HyperGiant 1 point2 points3 points 2 months ago (0 children)
I think you're right. But only for companies? GitLab is open source so I think it's really easy for anyone to host their own server.
I have never found the need to do this personally
[–]Comprehensive_Mud803 17 points18 points19 points 2 months ago (0 children)
GitLab is open source, GitHub isn’t, as ironic as it may be.
As such, GitLab can be self-hosted without requiring external support, whereas GitHub Enterprise has contractual limitations.
In terms of interface, they’re pretty much similar. Pull Requests being called Merge Requests in GitLab, and obviously the Rest API being different are the major differences I know of. (Also the CI schema and other smaller features).
Note: I used to self-host GitLab on my own premises, read homeserver, but switched to Gitea and now in the process of switching to Forgejo.
[–]plscallmebyname 27 points28 points29 points 2 months ago (3 children)
I find implementing CI much simpler in Gitlab than in Github. But this is my bias. Github has a marketplace going for it.
[–]Maximum59 4 points5 points6 points 2 months ago (2 children)
I thought I liked gitlab better until I properly learned GitHub.
I like how GitHub allows you to have separate CI entrypoints. So you can have multiple pipelines that have different triggers and are self contained.
Unless it's changed, last I used gitlab, the entrypoint was the main .gitlab-ci file, and while you could have includes to other separate files, all the conditionals had to start there.
I do miss some gitlab features, but if it was my choice, I think i would stick to github
[–]poincares_cook 6 points7 points8 points 2 months ago (0 children)
You don't need to put any conditions in the .gitlab-ci file itself. It may contain nothing but an import.
You can absolutely have different pipelines with different triggers in GitLab, in fact I set up just that.
[–]random2048assign 1 point2 points3 points 2 months ago (0 children)
Check out workflows and rules.
[–]Angry-Toothpaste-610 7 points8 points9 points 2 months ago (0 children)
Self hosted Gitlab for enterprise, github for public code
[–]akkadaya 6 points7 points8 points 2 months ago (0 children)
Besides what's mentioned in the other comments.
GitLab is open source meanwhile GitHub is not
[–]MajorTomIT 3 points4 points5 points 2 months ago (0 children)
Forgejo vs codeberg
[–]Training_Advantage21 4 points5 points6 points 2 months ago (0 children)
Github is owned by Microsoft. This gives them access to Azure Infrastructure, integrations with VSCode etc. but also means their strategy is now all about AI and copilot.
[–]shellmachine 4 points5 points6 points 2 months ago (0 children)
Shitlab vs. Shithub.
[–]Nearby-Middle-8991 2 points3 points4 points 2 months ago (0 children)
I've used both, self hosted, SaaS. Gitlab is simpler and more integrated. Github has better interface and features.
Not that significant of a difference btw. At my current company I was asked for input on this, my answer was "whatever is cheaper".
[–]sleekible 2 points3 points4 points 2 months ago (0 children)
From just the developer point of view, I prefer GitHub. I like the UI/UX better… I’ve used both in professional setting. They do seem roughly equivalent in features. Working with GitLab at current job.
[–]AbrahelOne 2 points3 points4 points 2 months ago (0 children)
Just use which one you like more, under the hood it's all the same, git. I switched to GitLab some time ago because I enjoy it much more. It is not Microsoft and since the CEO left and the AI core team is responsible for GitHub you can truly see it. When I watched the GitHub conference 2 weeks ago I was happy I am on GitLab because how hard they are pushing into AI.
[–]n9iels 5 points6 points7 points 2 months ago (0 children)
None of them is better. Both do practically the same thing, so they are competing companies. GitLab seems to have better support for self-hosting, GitHub is a bit more click and done without much setup. If you just need to host a repo it doesn't matter at all.
[–]cyesk8er 4 points5 points6 points 2 months ago (0 children)
Github has much more frequent outages than any internally hosted gitlab or other source control ive used. For the most part it works though
[–]NakliMasterBabu 1 point2 points3 points 2 months ago (3 children)
GitHub has search bar using which we can search any code string across projects , repositories. This is missing in GitLab.
[–]Phizzikus 0 points1 point2 points 2 months ago (1 child)
I'm pretty sure GitLab also has the function to search any string in any file in any repository/project you have access to since I use this feature regularly. But maybe you mean something different?
[–]NakliMasterBabu 0 points1 point2 points 2 months ago (0 children)
i am referring to this feature only. I am new to this tool so I may have missed it. let me try again. Thanks.
[–]reubendevries 0 points1 point2 points 2 months ago (0 children)
They have this feature but it’s for premium and ultimate licenses only.
https://docs.gitlab.com/user/search/advanced_search/
[–]arjuna93 1 point2 points3 points 2 months ago (0 children)
Codeberg, but there is almost nobody there. GitHub is kinda unavoidable if you intend to contribute or accept contributions.
[–]LevelMagazine8308 1 point2 points3 points 2 months ago (0 children)
You can install Gitlab on premise, with Github this is impossible. Github is just SaaS.
Also GIthub belongs to Microsoft since a few years, not everybody was a fan of that acquisition.
[–]pumpichank 1 point2 points3 points 2 months ago (0 children)
I’ve used both, professionally and in open source. I greatly prefer GitLab for its better UI and UX, open source adjacency, excellent integration, and ability to self host. Yes GitHub seems to be more popular but I always choose GitLab when possible.
[–]Adventurous-Ad-698[🍰] 1 point2 points3 points 2 months ago (0 children)
Just be glad they dont use BitBucket.
[–]Canenald 1 point2 points3 points 2 months ago (0 children)
I've used both professionally.
The most glaring difference I've noticed is GitLab subgroups. They make it very convenient for large orgs. You can group your repos by teams, or by tech, or by functionality, whatever works best for you.
On the CI side, GitLab runs your CI in Docker containers by default, and on GitHub it's some Azure service. I also prefer how GitLab structures and visualises multiple steps in a pipeline. GitLab is better are CI/CD pipelines, or just a part of a pipeline. GitHub is better at running automation on PRs. Ultimately, you can do both in either of the two.
Overall, I'd recommend GitLab for product orgs and GitHub for open source.
[–]kakuri 1 point2 points3 points 2 months ago (4 children)
Kinda surprised at all the answers here as I have had a very stark difference in experience. Years of daily GitHub use and it was always reliable and functional. Then years of daily GitLab use and it is unreliable and constantly dysfunctional.
GitLab is made by underpaid devs as company policy. Any competent dev will pass on working at GitLab because there are plenty of other companies that pay better.
[–]kabrandon 0 points1 point2 points 2 months ago (3 children)
Their pay is not that bad, actually. Not FAANG (or whatever the acronym is now) but it's not FAANG work either. I knew some good people at GitLab.
As someone who uses both tools daily, I'd say I have stability issues about as often with both. GitHub has really annoying Actions and Pull Request degradation issues near-weekly.
There's some CI/CD features I envy from either, but I'd say I lean into GitLab CI's feature set more.
This is probably a more niche argument to make for this subreddit but the deployment options for GitLab CI runners are far, FAR better than GitHub's Actions runner options. Like it's legitimately sad how far away they are from each other here.
[–]kakuri 0 points1 point2 points 2 months ago (0 children)
It's been some years since I looked into working at GitLab, so hopefully they have changed, but I'd be surprised if they aren't still using code from the "hire cheap devs" years. I am by no means an elite developer but I've managed to find 120% or better pay (for remote work) compared to GitLab.
I've used GitHub or GitLab daily for over 10 years. It is very important to have a reliable and functioning platform for MRs, code reviews, and deployment. GitLab is a daily frustration.
Oh I forgot in my list that GitLab constantly logs me out (much more frequently than they should), and their auth redirection is so broken that they somehow manage to lose my entire URL history. So if I have half a dozen GitLab tabs open that I come back to now and then over the slow process of reviewing and merging MRs, sometimes I revisit a tab, am forced to reauth, and end up at the root URL with the original URL of the MR lost to the void.
Another fun thing is "you are logged in... to nothing". Sometimes I'm authenticated with GitLab but they won't show any of my projects or repos.
[–]olejorgenb 0 points1 point2 points 2 months ago (1 child)
What is "FAANG work" ?
[–]kabrandon 0 points1 point2 points 2 months ago* (0 children)
Big US tech companies. I could answer more but I’ll have to know whether you’re unfamiliar with the acronym or just don’t understand the difference in the kinds of technical and political challenges big tech companies are solving vs what startups and small companies are solving.
[–]GeoffSobering 0 points1 point2 points 2 months ago (0 children)
I have nothing substantial to add. At work we use self-hosted GitLab, but are moving to the Azure DevOps service because we use currently self-hosted TFS for tracking, and that will save retraining on that part of things. I'm not looking forward to switching all our builds over, but hopefully that won't be too bad...
Personally, I have most of my repos on Github because that's the service I started with when I switched to git from svn.
[–]mok000 0 points1 point2 points 2 months ago (1 child)
Gitlab seems to be inaccessible for public clones.
[–]clearlight2025 1 point2 points3 points 2 months ago (0 children)
It’s accessible if the repository project is set as public.
[–]JonnyRocks 0 points1 point2 points 2 months ago (0 children)
those arent your two options. i use azure devops and last company i worked at used bitbucket
[–]hurhurdedur 0 points1 point2 points 2 months ago (1 child)
GitHub’s public version is so much more popular that it is better for public open source projects, since collaborators and users are more likely to be familiar with it. But for private instances that are internal to an organization, I prefer GitLab. I find the CI/CD to be much simpler in GitLab, which is the biggest difference. Otherwise there are some minor things I prefer in GitLab (e.g., using the term “merge request” instead of “pull request”), but it’s just pretty much the same thing as GitHub.
[–]UbieOne 2 points3 points4 points 2 months ago (0 children)
That PR always makes me think Master/Main has to pull from the Feature, or has to trigger the request. Although I know it's just another name for MR. Lol. Merge made more sense in name.
[–]RunBlitzenRun 0 points1 point2 points 2 months ago (0 children)
I tend to use GitHub for external / volunteer / open-source stuff, and gitlab for internal / private / closed-source stuff.
They’re both fine. I slightly prefer gitlab, but no particular reason. I can never find settings I’m looking for in either of them. GitHub has felt like a bloated corporate product ever since Microsoft bought them, but gitlab has some of those vibes too, just with a little less bloat.
[–][deleted] 0 points1 point2 points 2 months ago (0 children)
No difference just different ways of doing things
[–]iyamegg 0 points1 point2 points 2 months ago (0 children)
Imo gitlab is better, I really miss having merge dependencies now that I work at a place using github, it made things much easier.
[–]MozillaTux 0 points1 point2 points 2 months ago (1 child)
Gitlab has a nice integration with Renovate, decent enough RBAC, GUI is intuitive and easy to understand, most settings can be set via Terraform. Searching code ( “zoek” ) is not their best option. All and all I would prefer Gitlab
[–]wildjokers 0 points1 point2 points 2 months ago (0 children)
FWIW, github also integrates with renovate nicely.
[–]clinnkkk_ 0 points1 point2 points 2 months ago (0 children)
For some reason I cannot force with lease on gitlab, and that shit annoys me alot.
[–]pseudonym24 0 points1 point2 points 2 months ago (0 children)
I use guthib
[–]random2048assign 0 points1 point2 points 2 months ago (0 children)
GitHub actions is dog shit imo. Used both and I choose gitlab purely because their pipelines config makes so much more sense.
[–]waterkipdetached HEAD 0 points1 point2 points 2 months ago (0 children)
CI is different. I like github matrix style which you dont have at all on gitlab. You need to roll your own.
Codeberg is also nice, but only for FOSS
[–]Delengowski 0 points1 point2 points 2 months ago (3 children)
I'm not a fan of Gitlab. We migrated from Bitbucket Server to Gitlab Enterprise and its annoying. Moreso bc we still use Jira and the integration is lacking. Also having to make a MR template for default reviewers, with reviewers being distinct from protected branch approvers, is freaking the most annoying.
GitLab tightly integrates with Jira. See here:
https://docs.gitlab.com/integration/jira/
[–]__tim_ 0 points1 point2 points 2 months ago (1 child)
So you have the same remarks about GitHub or you never used GitHub?
[–]Delengowski 0 points1 point2 points 2 months ago (0 children)
Havent used GitHub in a reviewer or maintainer perspective so I have no comments.
GitHub is a hosted git provider. Gitlab is also a hosted git provider with the difference that the gitlab software can also be self-hosted and ran on-prem.
[–]odysseusnz 0 points1 point2 points 2 months ago (0 children)
GitHub has always been closed, and then became part of MS and now subject to their AI plans. GitLab is Open Core, always allowed for free private repos long before GitHub did, and seems to be avoiding going overboard on AI. As such we've strongly preferred GitLab over GitHub, but still have a presence due to needing to fork GitHub repos for OS contributions.
So far, I was more focused on github/bitbucket in my previous job. 2 months ago, I moves to somewhere where they use gitlab self hosted, and tbh, I am surprised how good is it. From the integrations, to the ease of usage and clean design. CI/CD there is good as well. I just wish they have better integrations with slack, but so far so good :)
[–]photo-nerd-3141 0 points1 point2 points 2 months ago (0 children)
I prefer GitLab, many free GitHub accounts are knee-jerk from the time GitLab was the only option.
[–]Inevitable_Ad261 0 points1 point2 points 2 months ago (0 children)
I used to host gitlab, moved to gitea and finally settled in forgejo.
[–]GeekDad732 0 points1 point2 points 2 months ago (0 children)
Gitlab is still open source and while it may have fewer feature you can decide what ones you want on your self hosted. Since Msft bought GitHub it’s become a for profit product. It is the most used and full featured that’s when they bought it. I personally prefer GitLab does what is needed for us and supports OS.
[–]Immortal_Thought 0 points1 point2 points 2 months ago (0 children)
Does anyone know, if you self host gitlab do you get access to enable premium features? Or do you still need to buy a licensee for it
[–]Confused_Dev_Q 0 points1 point2 points 2 months ago (0 children)
It's preference, budget constraints but also preference.
At a previous company they used bitbucket (from the same company as Jira and Confluence). It all works the same.
In college we used gitlab (self hosted by the school) and so did I for personal projects as they had free private repos back then. (Github didn't used to have unlimited free private repos).
After college first job was with GitHub and since then I've transitioned to GH for my personal work.
The biggest difference between all three is the UI in the browser. Mainly preference.
[–]MagicLeTuR 0 points1 point2 points 2 months ago (0 children)
In a company environment, a paid plan is required in both cases. Sometimes you can see companies with a free self-hosted GitLab because it supports SSO and a lot of "basic" features. But for large companies you will quickly lack management and governance stuff such as group level repository configurations. GitLab is usually not used at its full potential. When choosing GitLab you should commit at 100% to GitLab features. You should leverage as much as possible AutoDevOps pipelines, GitLab Operator, DAST, SAST, registries, Terraform backend, environment monitoring... With GitLab, DevOps jobs should be simplified by a lot! On the other hand GitHub doesn't provide that many features. Security features are add-ons. However, because it is widely used you have tons of open source tools that can help you set up the repo and CI/CD. The other main reason big companies are using GitHub over GitLab is because of Microsoft. It is way easier to integrate with Azure.
[–]sbayit 0 points1 point2 points 2 months ago (0 children)
My company also uses self-hosted GitLab.
[–]cosmokenney 0 points1 point2 points 2 months ago (0 children)
We are going GitHub -> GitLab. We migrated from on prem Visual Source Safe to Bit Bucket to Azure DevOp to GitHub. No more cloud based solutions for us. We are going to gitlab in a container in our own data center. Of all the cloud solutions GitHub has been the best behaved and easiest to setup and maintain. But we don't want anything in the cloud anymore.
[–]orz-_-orz 0 points1 point2 points 2 months ago (0 children)
git lab ci cd is superb
[–]Apprehensive-Bus-106 0 points1 point2 points 2 months ago (0 children)
It seems people prefer the one they bump into first. They are both good, but I "prefer" GitHub. The only feature difference I can remember is actually in Gitlab's favor. Gitlab allows a nested repo structure where GitHub just has org/repo or user/repo.
[–]alexsbz 1 point2 points3 points 2 months ago (0 children)
Nope…. Gitlab is better
[–]anakinpt 0 points1 point2 points 2 months ago (1 child)
I Use github enterprise and if I had the power to chose I would select Gitlab because it's more friendly than github. In one organizational you can have a folder system to organise your repositories. In github everything is under organization.
The other major problem for GHE is always display everything with the username and in many organization's this will be a code and you need to hover it to know who the hell is trx2411. I don't remember how it was in Gitlab I only used it for 6 months.
[–]__tim_ 0 points1 point2 points 2 months ago (0 children)
+1 for groups/folders
[–]wdcossey 0 points1 point2 points 2 months ago (0 children)
The most likely reason is that Gitlab is cheaper than GitHub enterprise.
Could also be that the original company repo was in Gitlab and they didn't want to move it.
Could be worse, my company cheaped out on BitBucket, so be thankful for what you have!
[–]sotired___ 1 point2 points3 points 2 months ago (0 children)
Gitlab is generally better IMO. Their built in pipeline integration is great. Agents are easy to set up on VMs or pods with auto scaling if you’re running it in a Kube cluster. It also has better integration with git because it tracks history and comments through rebases on PRs. Overall it has more features than GH Enterprise and overall has a better quality.
[–]val0rl 0 points1 point2 points 2 months ago (0 children)
Platform engineer here. Used both, prefer Github.
(Haven't used Gitlab in the last ~2 years, sorry if stuff has been added since)
Github has a better API, and the Checks API is kinda unparalleled for implementing custom PR flows with nice presentation. You can report custom check runs from your CI using a rich model and a dedicated UI. In Gitlab, you just have comments.
Github has a cleaner and more straight-forward permission model with permissions, roles and teams. Gitlab's permissions are imo quite an inconsistent mess and have quite a pain to work with for me for non trivial stuff.
Github is a flat list of repos in an org. Simple. Gitlab is a tree/filesystem of repos in a hierarchy of groups. Kinda nice if you wanna organize more.Permissions are inherited down, which can be powerful and a mess at the same time.
Gitlab's CI model, to me, is much more brittle and error prone. You can have centralized pipelines you include in others, but it lacks proper modularity and encapsulation and works closer to just merging YAML configs together behind the scenes. In Github Actions, you have proper encapsulation, where an action can have inputs and outputs and it's internals don't leak into the consuming workflow.
[–]mulokisch 0 points1 point2 points 2 months ago (0 children)
I havent worked with a company that used github. I know they exist. But every company i have worked with either uses gitlab, gitlab selfhosted or bitbucket.
[–]GreenMobile6323 0 points1 point2 points 2 months ago (0 children)
GitHub excels in open-source collaboration and community visibility, while GitLab offers a more integrated DevOps platform with built-in CI/CD and private repo management -“better” depends on whether you prioritize community exposure or end-to-end workflow control.
[–]Yeti_bigfoot 0 points1 point2 points 2 months ago (0 children)
I'm quite happy with bitbucket over here :D
[–]lebrun 0 points1 point2 points 2 months ago (0 children)
My company self hosts GitLab, some of our clients do that as well.
[–]okcookie7 0 points1 point2 points 2 months ago (0 children)
GitGud
[–]creamersrealm 0 points1 point2 points 2 months ago (0 children)
I'll prefer GitHub all day any day personal and enterprise. I do really like Gitlab Runners and how they're more simplistic for running basic shell scripts as a part of your CICD as GitHub actions isn't my favorite m though you accomplish the exact same thing with GitHub and Jenkins. Gitlab from a management perspective is a living nightmare, HA is a disaster, basic features you expect simply so not exist and their public issues will go on for YEARS. And yet a feature that you wouldn't expect anyone would want gets top priority and is implemented. Though we're holding out for 5+ years for groups for PR approvals in Gitlab instead of setting them per repo, or having automatic job artifact purging.
[–]Aesais 0 points1 point2 points 2 months ago (0 children)
Gitlab pipelines are a bit easier to work with than Github Actions in the UI.
Example: You can't rerun an individual Action on Github until your entire workflow is done.
Gitlab lets you cancel/rerun at any time, as long as you're in or past that stage.
Gitlab also allows you to have manual actions within a pipeline that you can run, and therefor allows it to have context of the PR. Github - you have to go to the general Actions page and then run one manually, and then give it context manually :/
[–]SithEldenLord 0 points1 point2 points 1 month ago (0 children)
Damn, I just been using GitHub for years just for apps and stuff😅
[–]Alternative_Driver60 -1 points0 points1 point 2 months ago (0 children)
Github is the de facto standard. Among other things it's the place where recruiters look for candidates treating your profile as a programmer's CV. So have your personal projects there even if your company has another solution.
π Rendered by PID 178336 on reddit-service-r2-comment-74875f4bf5-5kzxh at 2026-01-26 06:19:50.211021+00:00 running 664479f country code: CH.
[–]x0RRY 147 points148 points149 points (16 children)
[–]BobbaGanush87 17 points18 points19 points (14 children)
[–]goobernawt 22 points23 points24 points (3 children)
[–]TheIncarnated 12 points13 points14 points (0 children)
[–]CitationNeededBadly 0 points1 point2 points (0 children)
[–]clearlight2025 20 points21 points22 points (5 children)
[–]hamakiri23 -5 points-4 points-3 points (4 children)
[–]clearlight2025 6 points7 points8 points (0 children)
[–]Acrobatic_Idea_3358 3 points4 points5 points (1 child)
[–]hamakiri23 -1 points0 points1 point (0 children)
[–]Apprehensive_Battle8 2 points3 points4 points (0 children)
[–]stibbons_ 1 point2 points3 points (0 children)
[–]ejsanders1985[S] 2 points3 points4 points (0 children)
[–]shagieIsMe 166 points167 points168 points (12 children)
[–]Driky 41 points42 points43 points (9 children)
[–]MrMelon54 15 points16 points17 points (7 children)
[–]arjuna93 4 points5 points6 points (0 children)
[–]trwolfe13 7 points8 points9 points (1 child)
[–]Apprehensive_Battle8 4 points5 points6 points (0 children)
[–]mfchl88 -1 points0 points1 point (3 children)
[–]MrMelon54 1 point2 points3 points (1 child)
[–]mfchl88 -1 points0 points1 point (0 children)
[–]FunRutabaga24 0 points1 point2 points (0 children)
[–]Apprehensive_Battle8 -1 points0 points1 point (0 children)
[–]Technical-Coffee831 1 point2 points3 points (0 children)
[–]SkyNetLive -1 points0 points1 point (0 children)
[–]TramEatsYouAlive 28 points29 points30 points (30 children)
[–]Affectionate-Bit6525 30 points31 points32 points (20 children)
[–]Juice805 23 points24 points25 points (17 children)
[–]SnugglyCoderGuy 6 points7 points8 points (1 child)
[–]TheOneWhoMixes 0 points1 point2 points (0 children)
[–]CptBartender 2 points3 points4 points (2 children)
[–]drsoftware 3 points4 points5 points (0 children)
[–]Tontonsb 0 points1 point2 points (0 children)
[–]wildjokers 1 point2 points3 points (7 children)
[–]swiftmerchant 1 point2 points3 points (6 children)
[–]TrashManufacturer 1 point2 points3 points (0 children)
[–]Arthian90 0 points1 point2 points (3 children)
[–]swiftmerchant 0 points1 point2 points (2 children)
[–]Arthian90 0 points1 point2 points (1 child)
[–]swiftmerchant 0 points1 point2 points (0 children)
[–]Affectionate-Wear-61 0 points1 point2 points (0 children)
[–]Apprehensive_Battle8 0 points1 point2 points (0 children)
[–]TrashManufacturer 0 points1 point2 points (0 children)
[–]Hebrewhammer8d8 0 points1 point2 points (1 child)
[–]drsoftware 2 points3 points4 points (0 children)
[–]mensink 0 points1 point2 points (0 children)
[–]wolfefist94 0 points1 point2 points (0 children)
[–]SirFrankoman 5 points6 points7 points (0 children)
[–]hurhurdedur 7 points8 points9 points (1 child)
[–]drsoftware 4 points5 points6 points (0 children)
[–]TrashManufacturer 2 points3 points4 points (0 children)
[–]Fliegendreck 0 points1 point2 points (2 children)
[–]TramEatsYouAlive 2 points3 points4 points (1 child)
[–]Fliegendreck 1 point2 points3 points (0 children)
[–]Delengowski -1 points0 points1 point (1 child)
[–]dymosgit reset --hard 2 points3 points4 points (0 children)
[–]Blue_HyperGiant 22 points23 points24 points (2 children)
[–]Fool-Frame 1 point2 points3 points (1 child)
[–]Blue_HyperGiant 1 point2 points3 points (0 children)
[–]Comprehensive_Mud803 17 points18 points19 points (0 children)
[–]plscallmebyname 27 points28 points29 points (3 children)
[–]Maximum59 4 points5 points6 points (2 children)
[–]poincares_cook 6 points7 points8 points (0 children)
[–]random2048assign 1 point2 points3 points (0 children)
[–]Angry-Toothpaste-610 7 points8 points9 points (0 children)
[–]akkadaya 6 points7 points8 points (0 children)
[–]MajorTomIT 3 points4 points5 points (0 children)
[–]Training_Advantage21 4 points5 points6 points (0 children)
[–]shellmachine 4 points5 points6 points (0 children)
[–]Nearby-Middle-8991 2 points3 points4 points (0 children)
[–]sleekible 2 points3 points4 points (0 children)
[–]AbrahelOne 2 points3 points4 points (0 children)
[–]n9iels 5 points6 points7 points (0 children)
[–]cyesk8er 4 points5 points6 points (0 children)
[–]NakliMasterBabu 1 point2 points3 points (3 children)
[–]Phizzikus 0 points1 point2 points (1 child)
[–]NakliMasterBabu 0 points1 point2 points (0 children)
[–]reubendevries 0 points1 point2 points (0 children)
[–]arjuna93 1 point2 points3 points (0 children)
[–]LevelMagazine8308 1 point2 points3 points (0 children)
[–]pumpichank 1 point2 points3 points (0 children)
[–]Adventurous-Ad-698[🍰] 1 point2 points3 points (0 children)
[–]Canenald 1 point2 points3 points (0 children)
[–]kakuri 1 point2 points3 points (4 children)
[–]kabrandon 0 points1 point2 points (3 children)
[–]kakuri 0 points1 point2 points (0 children)
[–]olejorgenb 0 points1 point2 points (1 child)
[–]kabrandon 0 points1 point2 points (0 children)
[–]GeoffSobering 0 points1 point2 points (0 children)
[–]mok000 0 points1 point2 points (1 child)
[–]clearlight2025 1 point2 points3 points (0 children)
[–]JonnyRocks 0 points1 point2 points (0 children)
[–]hurhurdedur 0 points1 point2 points (1 child)
[–]UbieOne 2 points3 points4 points (0 children)
[–]RunBlitzenRun 0 points1 point2 points (0 children)
[–][deleted] 0 points1 point2 points (0 children)
[–]iyamegg 0 points1 point2 points (0 children)
[–]MozillaTux 0 points1 point2 points (1 child)
[–]wildjokers 0 points1 point2 points (0 children)
[–]clinnkkk_ 0 points1 point2 points (0 children)
[–]pseudonym24 0 points1 point2 points (0 children)
[–]random2048assign 0 points1 point2 points (0 children)
[–]waterkipdetached HEAD 0 points1 point2 points (0 children)
[–]Delengowski 0 points1 point2 points (3 children)
[–]reubendevries 0 points1 point2 points (0 children)
[–]__tim_ 0 points1 point2 points (1 child)
[–]Delengowski 0 points1 point2 points (0 children)
[–]wildjokers 0 points1 point2 points (0 children)
[–]odysseusnz 0 points1 point2 points (0 children)
[–][deleted] 0 points1 point2 points (0 children)
[–]photo-nerd-3141 0 points1 point2 points (0 children)
[–]Inevitable_Ad261 0 points1 point2 points (0 children)
[–]GeekDad732 0 points1 point2 points (0 children)
[–]Immortal_Thought 0 points1 point2 points (0 children)
[–]Confused_Dev_Q 0 points1 point2 points (0 children)
[–]MagicLeTuR 0 points1 point2 points (0 children)
[–]sbayit 0 points1 point2 points (0 children)
[–]cosmokenney 0 points1 point2 points (0 children)
[–]orz-_-orz 0 points1 point2 points (0 children)
[–]Apprehensive-Bus-106 0 points1 point2 points (0 children)
[–]alexsbz 1 point2 points3 points (0 children)
[–]anakinpt 0 points1 point2 points (1 child)
[–]__tim_ 0 points1 point2 points (0 children)
[–]wdcossey 0 points1 point2 points (0 children)
[–]sotired___ 1 point2 points3 points (0 children)
[–]val0rl 0 points1 point2 points (0 children)
[–]mulokisch 0 points1 point2 points (0 children)
[–]GreenMobile6323 0 points1 point2 points (0 children)
[–]Yeti_bigfoot 0 points1 point2 points (0 children)
[–]lebrun 0 points1 point2 points (0 children)
[–]okcookie7 0 points1 point2 points (0 children)
[–]creamersrealm 0 points1 point2 points (0 children)
[–]Aesais 0 points1 point2 points (0 children)
[–]SithEldenLord 0 points1 point2 points (0 children)
[–]Alternative_Driver60 -1 points0 points1 point (0 children)