this post was submitted on 27 Jul 2025
26 points (100.0% liked)

Selfhosted

49847 readers
833 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 2 years ago
MODERATORS
 

I am looking for recommendations for an open source self-hosted ~~version control system~~ source code hosting service. I found a few, but I can't decide on which one to pick:

If there's a better one than the ones I've listed here, I'd love to hear about it!

I care primarily about privacy and security, if that makes any difference.

top 23 comments
sorted by: hot top controversial new old
[–] thirdBreakfast@lemmy.world 6 points 1 hour ago

Forgejo - actively developed open source. It's what powers Codeberg. Easy to set up and manage with Docker. I moved to it from Gogs and skipped Gitea after reading about the forks.

I use Forgejo for my private git repos but in all honesty, it's massive overkill for my needs.

[–] shiftymccool@programming.dev 1 points 2 hours ago

I use Forgejo mostly for code archiving but anything that requires CI/CD, like personal code projects, i use OneDev. No extra setup for pipeline, batteries included

[–] NebulaNymph@programming.dev 10 points 5 hours ago

+1 for Forgejo!

Just set it up with Docker this past week, it was fairly straightforward and has been working well since

[–] flubba86@lemmy.world 13 points 6 hours ago

+1 for Forgejo

[–] 56_@lemmy.ml 2 points 3 hours ago* (last edited 3 hours ago) (1 children)

Those 3 are all fairly similar. Here are some others I can think of:

  • Gitlab: many features, complex, pr workflow.
  • Forgejo / Gogs: simpler, github inspired interface, pr workflow.
  • Radicle: peer to peer, idk much more...
  • Sourcehut: minimal (non-github) interface, very modular, email workflow.
  • Cgit / Gitweb / etc.: just a git interface, no specific workflow.

 

If you're not using any of the additional features, cgit should be enough. If you're planning on collaborating with others, probably Forgejo would be better.

You can also use individual components of sourcehut, if you want a git web interface with just issue tracking, ci, or wiki, for example.

[–] sun@slrpnk.net 1 points 3 hours ago

A pro of Sourcehut is that EVERYTHING can be done by email. So, if you use their issue tracker and want other people to be able to submit issues, they can do it without making an account.

[–] darkan15@lemmy.world 10 points 6 hours ago

Used Gitea for a while, and decided to switch to Forgejo before the hard fork split (no more code from Gitea), been using it since, In my opinion both work well, but prefer Forgejo.

[–] AbidanYre@lemmy.world 21 points 9 hours ago (2 children)

Gogs is the original. Gitea is a fork because the dev of Gogs wasn't taking community input (I think that was the reasoning behind it). Forgejo is a fork of gitea because some folks didn't like gitea forming a for profit corporation (Or something to that effect).

As far as day to day use they're all fairly similar, though it's been a long time since I used Gogs.

[–] princessnorah@lemmy.blahaj.zone 11 points 8 hours ago

It's not just the for-profit corporation, there's also governance issues. Basically, the community elected certain positions and then had the rug pulled out from them such that no elections would be held again.

In the name of the Gitea Community who elected you last year, we welcome the creation of a for-profit company that allows you to make a living out of Gitea.

[...]

We believed you when you promised to pass along the ownership of the Gitea project to your elected successors. This promise is part of an essential bond between you and the strong Community of volunteers, as well as all those who rely upon our collective efforts.

With that in mind, you can understand our surprise when we learned on October 25th, 2022 that both the domains and the trademark were transferred to a for-profit company without our knowledge or approval.

Source.

[–] marcos@lemmy.world 3 points 9 hours ago (1 children)

IMO, the Gogs dev was correct. If you look at that community input and what Gitea became, I was glad to use the version that rejected it.

But I don't know how it compares with Forgejo.

[–] _cryptagion@quokk.au 4 points 5 hours ago

It’s Gitea with some security fixes and community input, as open source software should be.

[–] i_am_not_a_robot@discuss.tchncs.de 7 points 7 hours ago (2 children)

You're missing GitLab. I'd be looking at GitLab or Forgejo.

But you might not need this. When you access a private Git repository, you're normally connecting over SSH and authenticating using SSH keys. By default, if you have Git installed on a server you can SSH to and you have a Git repository on that server in a location you can access, you can use that server as a Git remote. You only really want one these services if you want the CI pipelines or collaboration tools.

[–] Arigion@feddit.org 2 points 4 hours ago

This is not true. There are lots of places where ssh/vpn is blocked by a firewall while https usually is allowed. So if you want to access/push code while travelling it might be really helpful to have https access to the repo. That was the only reason for me to set up gitlab years ago.

[–] vividspecter@aussie.zone 7 points 7 hours ago

Having a web UI is useful even if you're not using the extra tools. Not mandatory of course, but nice.

[–] mvirts@lemmy.world 4 points 6 hours ago (1 children)

My only input is gitlab is very complicated, never used the others

[–] corsicanguppy@lemmy.ca 1 points 6 hours ago (1 children)

To install gitlab:

  1. Yum install omnibus-gitlab

Done.

[–] 7EP6vuI@feddit.org 3 points 4 hours ago (1 children)

maybe the installation is simple, but the whole thing is still a beast and has tons of different services and does a lot of stuff. i prefer forgejo because of it's simplicity (still not super easy) and it takes less resources.

[–] justme@lemmy.dbzer0.com 1 points 3 hours ago

I used it for a while. It eats up half your server just by existing ^^is a good system for the time, but now we have better alternatives.

[–] tal@lemmy.today 10 points 9 hours ago (2 children)

The things you're describing aren't really version control systems themselves. Git is a version control system; these are an ecosystem of web-based tools surrounding that version control system.

I don't know if there's a good term for these.

kagis

Wikipedia calls them "forges":

https://en.wikipedia.org/wiki/Forge_(software)

In free and open-source software (FOSS) development communities, a forge is a web-based collaborative software platform for both developing and sharing computer applications.

For software developers it is an online service to host the tools they need to work and communicate with their coworkers. It provides a workflow to propose modifications and engage in discussions. The goal is to reach an agreement that will allow these modifications to be merged into the software repository.

For users, a forge is a repository of computer applications, a place where bugs can be reported, a channel to be informed of security issues, etc.

The source code itself is stored in a revision control system and linked to a wide range of services such as a code review, bug database, continuous integration, etc. When a development community forks, it duplicates the content of the forge and is then able to modify it without asking permission. A community may rely on services scattered on multiple forges: they are not necessarily hosted under the same domain.

[–] whatwhatwhatwhat@lemmy.world 4 points 7 hours ago (1 children)

Sorry for the off-topic question, but this has been driving me crazy.

Is “kagis” the verb for using the search engine “kagi”? For the longest time I’ve been interpreting it as a “dejected sigh” emotional expression.

[–] tal@lemmy.today 5 points 7 hours ago
[–] Charger8232@lemmy.ml 4 points 8 hours ago

I guess it would be more akin to a "source code hosting service," but that would imply that I intend to open it to the internet (which isn't necessarily the case).