Hi, i’m a software developer and i want to implement a self hosted git server on my home server. I hear about gitea, gogs, gitlab, GitBucket, kallithea, etc… but i don’t know how choose.
Forgejo maybe? (Gitea fork)
I recently moved from gogs to gitlab. Mostly for the built in CI. Pretty happy with it. Install one, and try it for a bit, only way to know if it suits you. Its not too hard to switch between them if you have to transition later on, just git clone and repush to the new server.
Gitlab
I use OneDev. I haven’t tried anything else since I’m happy with it.
Things I like
Personal git server
Web interface
Automated Build pipeline
Ability to clone repos on github locally for my own copy. Given githubs reputation for deleting repos it doesn’t like, this is a good way for me to have my own source server.
Always online, always available .
Gitea
I personally love onedev.
Gitea.
In my opinion, Gitness, its very Good git ui server, for self-host with DI (https://github.com/harness/gitness)
Gitea is what I use. I see a lot of recommendations for gitlab, but I have some experience with it as well as github and for the life of me I can’t understand the gitlab people.
Do they not see the persistent and ridiculous bugs? Merge requests are ajax based and their initial load stage frequently shows errors like ‘branch “master” does not exist’ and then 1s later ajax loads and shows the MR. But then when you go to view the diff, half the diffs don’t load and when you click on them they still don’t load until you decide to click on somewhere else, then the page loads and highjacks your scroll to take you to god knows where.
Gitlab is a mess. If you just use it for yourself I guess it’s fine, but if you’re installing it for the web-frontend, literally any other git front-end is better.
used bonobo for a while and was happy with it.
I used gitlab for a while, but it was a bit resource-heavy for my two whole projects. So just a heads up I suppose.
If you don’t need a UI, I would use this: https://git-scm.com/book/en/v2/Git-on-the-Server-Setting-Up-the-Server
OneDev
Just plain git over ssh does the job for me. Nothing else needed to “host” it.
Gitea 👍🏻