It is always better to propose a solution instead of pointing out a problem, but while listening to another rant about GitHub enshittification, I came up empty. Not because there are no alternatives—because all of them are entangled in the same incentive structure. There is no escape from market logic, where you build a great product to lure customers in and then switch efforts to lock them in and extract as much value from them as they can stomach—while the core product becomes an afterthought.
Thats why both businesses and engineers are constantly navigating between Scylla of risking building & maintaining tools internally and Charybdis of vendor lock in with product which at the moment might be the perfect solution, but will turn into prison cell with growing rent.
Depending on external offerings was typically seen as safer, because as the old saying goes “nobody ever got fired for buying IBM”. It will probably stay that way - even if this becoming a objectively bad advice. It might be perceived as cynical, but for me when Microsoft took over GitHub, it was not question “if” it starts to rot, but “when” and how bad it will get.
While growing frequency of downtimes in different parts of their system where not a deal breakers - the last FUBAR with merge queue literally dropping changes from git history is (see GitHub Status incident). It breaks core promise of any VCS system and as far as I know, until now, GitHub or the competition never had an incident of this severity.
So, as I see it, if you are a guy/gal with a longer perspective than next two sprints, quarters and actual power to make decisions - every marriage with SAAS, IAAS should come with prenup, understood as a draft of a exit plan. For the sake of your business margins, good sleep, and reintroducing some healthy incentives to the market.
You want to milk your customers - but are you comfortable to be milked yourself?