Forgejo is great.
I'm not saying you should never self-host your git server, but it's not for everyone.
It's truly pathetic how developers today cede everything to cloud services. A $20 VPS (whatever gets you 4 gigs of ram) is likely enough to host all the business needs of 90% of SMBs across the US.
Even easier today with things like Docker, Forgejo, and other great self hosting solutions.
Why would a company care about opening up their codebase to the internet? These are problems you don't have to care about when you only want a small subset of solutions. Especially when the tradeoffs are drastically simpler.
Arguments against self hosting have to change as our SaaS overlords are decaying in front of our very eyes.
I get self-hosting got for security, compliance, and retention reasons, but for almost everything else it seems questionable for any use I would consider normal.
What is complicated is having a convenient interface for managing the repository (users, groups, and hook-actions) and showing what the repository contains (commits, branches, tags).
I remember back in the day the first part was handled adequately with software like gitosis and gitolite, which just used git repository to manage other git repositories on the system.