upvote
Would also like a write-up. People assume it's just because of GitHub outages, but GitHub is slightly worse in every aspect, so for big projects and organisations it compounds to being quite messy to manage and operate.

GitLab is thought-out to support larger groups with more complex pipelines, and while it's got it's own set of quirks, it doesn't begin to compare, GitHub in contrast seems like a toy forge for toy projects.

reply
Having used GitLab pipelines, I would definitely not describe it as well thought out. Their method of forcing all jobs/pipelines for a repo through one file controlled with a load of ‘if’ rules is a complete mess. Makes running multiple pipelines for one repo a huge PITA. Compared to GitHub Actions or Jenkins its a pretty poor experience
reply
This only happens on poorly thought pipelines and GitHub actions model or Jenkins high level directives won't make up for it. Eventually it'll break.

In Gitlab you can use the main file for describing high level stage pathways (tests, builds, deployments...) and offload individual control of jobs to granular files. Tests can be self contained child pipelines. Templates make them easy to replicate and components give them more flexibility.

You can do a lot more than GitHub actions with a lot less complexity than Jenkins.

reply
why? like having a dozen outages in the last couple months isn't a good enough reason why?
reply
GitLab is just as bad, just not as big so doesn't get the coverage. https://status.gitlab.com/pages/history/5b36dc6502d06804c083...

And of course many people self-host which changes a lot of the equation (which you can also do with GitHub, but not for free - and FWIW our self-hosted premium gitlab has about an hour a day downtime, which we've been told by the team responsible is an unavoidable side-effect of backing up gitlab).

reply
I was responsible for administering a self hosted GitLab instance for a medium sized company and our backups never required downtime. The built in backup command doesn't require downtime but also isn't a consistent point in time snapshot (specifically because the instance keeps running while the backup is being taken). If they've decided they need one for some reason, stopping GitLab is certainly the easiest way, but not the only way of accomplishing that goal, but that'll be true of any self-hosted forge, including GitHub.
reply
You could stop it, do a snapshot of the storage and backup that for <1 min of downtime probably.

But at the same time, if you're not a global company, doing it at 3am is probably fine.

reply
Doing a snapshot of the storage while it's running wouldn't be bad either, it'd just be like having cut power at the point of the snapshot, right?
reply
Yes. And the database used by GitLab is Postgres which handles that just fine.
reply
It can be an issue if you are using gitlab as your container/package registry and production workloads need to pull from it, though.
reply
They should be pulling from a pull through scanning repository cache anyway, so they can be scanned before going into production.
reply
Weird. I’ve been on a self hosted enterprise gitlab and I think we’ve have only one or two performance degradations/outages in the past 6 years
reply
We’re talking about the SaaS version, not self-hosted.
reply
Are you sure?

> [...] and FWIW our *self-hosted* premium gitlab has about an hour a day downtime

reply
AND
reply
No horse in this race but GitLab has been down a few times recently too.
reply
Considering the sheer volume GitHub received lately I wouldn’t be surprised if GitLab would experience similar issues unless self hosted.

Or what do you think?

reply
Or Microsoft/OpenAI (and others) just blatantly scraping all your codebases and violating thousands of OSS licneses?
reply
If the repos are public, hosting location doesn't make a difference.
reply
public repos don't have to be scraped or cralwed all over by bots right?
reply
They should not, then again they are.
reply
We're going to need something more expansive than OSI software licenses for the future.

Something like, "if you look at us, we must be able to look at you"

reply
How about "if you're not the customer, you're the product".
reply
At the risk of stating the obvious, that isn’t a software license.
reply
Roku uses Gitlab internally so could just be a standardization thing.
reply
Moving changes back and forth between gitlab and github is a pain. Could indeed be as simple as standardization and reducing development pains.
reply
What makes it more complicated than doing a Git push against two remotes? Assuming that one of those is used for collaboration and the other is just a mirror.
reply
The CICD pipeline is not directly compatible, for one.
reply
You don’t need to run the CI/CD pipeline in both. Choose one as your collaboration space, and the other as a mirror.
reply
Probably the lack of transparency regarding AI and AI accounts. They don't require any declaration..
reply