Update
Forgejo seemed to be the winning answer so I tried setting it up. Total setup time was less than 10 minutes. I pushed 10 repositories to test it out and so far it seems pretty good. Thank you everyone for the answers!
As the title states, I am looking to host maybe ~100 git repositories locally on my home network.
I’m not planning on doing anything too crazy with my repositories. The solution doesn’t need to support like 1000s of contributors however it should support the most basic features such as being able to see individual commits, branches, diffs, maybe some PR related mechanism, a web GUI, etc.
I don’t like to tinker too much. The solution should work and be stable. Stability is a hard requirement. I want to write code and not have to worry about losing it. Yes I will make backups.
Please let me know what some of the best options are at the moment. Thank you!
But ci/cd though
just use a make file like a civilised human being
forgejo supports woodpecker CI I thought?
Why not forgejo’s built in ci/cd? Its worked great for me so far?
I didn’t even know that’s a thing! Looks like it’s somewhat new. What a time to be alive!
Jenkins has fairly solid Gitea/Forgejo integration :)
I would like to use bare repos because I don’t share with anyone else and don’t really need the web-ui for issues or wikis or anything.
However, I need git-lfs and if I understand correctly, that doesn’t wont work with a bare repo over ssh.
I was using gitea a while back and they had a way to dump repos and db, but there didn’t seem to be a way to restore. That being the case I switched to gogs which has been great. It was only recently I learned that gogs wasn’t very active and there was some kind of security breach. Mine is only accessible on my LAN so not particularly worried about security.
Anyhow, looking at forgejo now it seems like there still isn’t a great way to restore from backup? I guess that might not matter to me if I’m only interested in the repos and no comments or other stuff that might be in the database.
Forgejo + Tailscale. Forgejo is the app behind Codeberg so it’s battle tested. I switched to it from Gitea after the controversy.
I finally decided to make the move off github a couple weeks ago and ended up self hosting with Forgejo. It was really easy to set up, and my buddies and I are loving it. Provides a robust web interface and handles pull requests with automatic merges and all that. I haven’t had any issues thus far
Forgejo is the way
If you’re looking for a bare bones solution, and you already have a machine that you can SSH into, you could just use that. There are desktop GUI/TUI apps galore that you can use to inspect commits, branches and such.
At work I’m in the process of planning a move from Subversion to Git. So I’ve been looking at Forgejo, a hard fork of Gitea maintained by Codeberg. It has all the important features of other forges like GitLab and Gitea. But is completely open source.
I’ve used Gitea before, Frogejo also looks pretty good
Just host a bare git repo.
I’d prefer it to have a website UI just in case I want to take a quick look at something when I’m not home.
Over a VPN, right? I always recommend not exposing services to the Internet if you can avoid it.

Jokes aside, yes.
I love Forgejo, I’m glad you are happy with it too. Their upgrade process is pretty minimal/straightforward (at least it has been so far) and their runner configuration is a bit heavy to set up initially (I maybe took the security recommendations a bit too intensively despite the fact that I’m running a completely private site, but allowing systems that run arbitrary commands automatically is legitimately a bit intimidating) but has been really nice and reliable now that it’s working.
Forgejo seemed to be the winning answer so I tried setting it up. Total setup time was less than 10 minutes.
Just a heads up… I haven’t looked at this since forever ago (when foregjo was gitea), but make sure you have a restore plan. I think there’s a dump command but no restore.
I’ve set up a few gitlab servers at companies and it’s always been well received. Doing it from scratch may be more complex than you want, but I think there are docker images for a more turnkey type solution. And the option of building CI/CD pipelines in the future is always nice to have.
If all of the below doesnt work out, you can host git by itself. I did that at an office once.
https://gist.github.com/Kreijstal/28fc987270b71849505bbc89b3f2d90a steps look correct.
But for me forgejo worked out well for my side projects and mirroring.
deleted by creator
Self-hosting gitlab?
Surely this is the correct answer.
GitLab is awesome and has good CI-CD
Idk, I had not heard of gitea or forgejo before. Personally I really want strong & flexible CI/CD, and Don’t know what the alternatives have to offer there, but it would be worth looking into. GitLab is pretty resource-heavy even for low user count.
It’s monstrous, but gitlab installs from one big RPM on a base box; and with one config file you’re up.
While I agree, out of the box the configs ARE NOT for home lab use.
For sure. And their bumbling has made it harder to deactivate all the useless bloat and get the good web-editor back. And a host of other mind-numbingly short-sighted decisions that show they’re fully run by LostBoy coders who were never mentored and just don’t know better.
But tuning can come after. And their CI is way fucking better than forgejo’s facepalm of a GitHub clone. And that’s a thin reason, but, yeah.
Yep.
It’s like they wanna get bought to compete with GitHub or something.
They’re moving fast and breaking things. And bloating their product in the process. In the last 24 months they paid over $1M to a single bug bounty hunter who basically took them to the cleaners.
But totally agree. It’s the best UX, best product for home lab or even small enterprise use if you’ve got someone to get it tuned appropriately.












