Forgejo is great.
I'm not saying you should never self-host your git server, but it's not for everyone.
Arguments against self hosting have to change as our SaaS overlords are decaying in front of our very eyes.
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.
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.