[Speculation:]
Perhaps they've run the numbers and can figure out that they make enough money from enterprise clients and will make enough more money from the 'marketplace' being a channel for selling github integrations and addons to cover this cost of not trying to monetize through supporting teams.
It also moves a large base from 'customer' with needed support to free users which don't need the same level of support.
E.g. I have git repos where I use multiple remotes (1 Github, 2 Gitlab..). So git is the same as everwhere.. I never felt locked in. It's not too hard to transfer your repos to another provider.
Do they? Unless you're on GitHub Enterprise, migrating is just moving your repos over the weekend, setting up new webhooks, emailing everyone a command to switch their upstream URL, and hoping the new workflow works for you. For teams of <100, this it one of the easier transitions to make.
[1]: https://docs.gitlab.com/ee/user/project/import/github.html
[2]: https://confluence.atlassian.com/get-started-with-bitbucket/...
I'm sure they have enough info about onboarding and unit economics to see how it will pay off mid to long term.
I'll happily pay for use though, it makes sense and it makes the value addition of github core vs extra more clear.
Update: apperantly github also has self hosted runners
https://help.github.com/en/actions/hosting-your-own-runners/...
> For more than 99% of customers, these changes have lowered their GitHub bills, in many cases quite dramatically. For a very small number of customers who use a large percentage of the free Actions minutes allotment each month, these changes have the potential to cause your bill to increase by $20-50/month, depending on how much you use Actions in the future. To offset that possibility, we’re adding a free credit of $500 to your organization’s GitHub account for you to use in any way you want.
GitHub has pull requests, actions (mini CI integrations), other fuller integrations running off github hooks.
It's the issues, and pull requests that are the most immediate lock in. Transfer away and you lose your issues and PR history.
But more deeply it's the integrations. Even if it's all theoretically possible through other providers, if you have a working CI system set up to "just work" through GitHub then there's little chance you'll want to migrate to a different provider and have to re-do all that configuration.
Even with a dedicated dev-ops team it's weeks of disruption, not to mention the possibility to get half way through and discover something doesn't work the same way in [Competitor].
If you're up and running with github PRs driving JIRA issues and JIRA issues feeding into GitHub issues. And you have paid github marketplace integrations delivering value, then you're not going to look at a competitor unless that competitor is offering something that GitHub doesn't do.
Up to now the competitors have only differentiated on price as far as I can tell. There's certainly no killer feature of GitLab that people talk about.