sourcehut.org would be my choice.
Drew is pretty adamant about stuff and his morales.
You will dislike somethings (UI and some policies) but will like majority of the things (tech like CI/CD etc).
It's OSS and can be self-hosted as well.
But I think drew fighting LLM scrappers on our behalf is good for us.
It's also cheap and should progressively improve going forward.
It's my long term plan. And the project and company is setup in a way to be here for the long game. So, I am progressively moving my projects (private and in small numbers, but still...) from gitlab to sourcehut over this year or next.
Codeberg. They ONLY host open source software, it's sponsored by European institutions, Zig moved there too.
In the near future I'm also adding Forgejo to our Kexxu servers. Forgejo is basically Codeberg (but you need to host it). If you want a private repo on Kexxu just ask.
This is evidently not a popular opinion, but git repositories don’t need to be hosted on any platform. Your local repo is a complete copy and can be pulled and pushed from and to. If you really want a backup or “source of truth” copy, you can clone it anywhere you have shell access. We make so many simple things hard unnecessarily.
If they have a blog or use a static site generator they could host their github repos online and use a plugin or something to display them. Or even just post links to the repos. It might cause bandwidth issues for popular projects and you wouldn't have any of the "social" features like stars (which in this case would be a feature) but it should be possible. Depending on how the backend is set up you might not even need to put the repos in the web path at all.
But I'd still say just use Codeberg. And see if there's an option to turn off PRs wherever your projects are hosted.
It depends on what you are looking to get out of the next platform.
For me, I'm not interested in the social aspect of coding anymore, so I have a Synology NAS running a git server accessible via ssh and I push my code there.
I use klaus (https://github.com/jonashaag/klaus) as a read only git web ui. My NAS is connected to my tailscale network so it's easy to view things on the go. It's a simple setup and works great.
I use forgejo myself but both are great choices. Self hosting has improved dramatically over the last decade. So many things that I would never think we'd have access to, like open source PaaS software on-par with what VC companies offer (dokploy, coolify, or komodo).
Same way you would for any other server. And I mean that 100% literally, given that at the command-line level the remote is simply a URL: https://git-scm.com/docs/git-remote
I'm not familiar with git, but can you post a read-only version publicly so others can still access all the commit history but not be subjected to pull requests?
(IIRC it is in fact actually even sometimes preferable from a security standpoint; or at least that's the tentative conclusion I've reached under a few specific circumstances over the years, although the exact details elude my memory at the moment.)
Git doesn’t even need to be “hosted” in the traditional sense. The whole point of it is that it is distributed and you don’t actually need a centralized source of truth.
I think one important factor would be still being able to interact with a community of people who care for software and would like to put genuine thoughts. Whether it be for submitting bug reports, issues, PRs or security reports. Of course other platforms are not diverse as GitHub, it would be nice to see which other platforms are attracting such people. This in turn has a higher chance of interacting with such people.
Related question, is there a web-based self-hosted git replacement that's _light-weight_ (i.e. resilient to scraping)? Should have things like file view, file browser, etc but is not taxing on the server.
Forgejo. A single tiny golang binary, I think about 200mb. It has 75% of the functionality of gitlab with 5% of the resource requirements. I migrated to it and have never missed gitlab.
Forgejo is lightweight relative to some other options, but it is not resilient to scraping. Scrapers can access, commit-by-commit, each individual file, each file's "git blame", and each commit's repository archive... and they do. Most public Forgejo instances need to rely on a reverse proxy like Anubis or Iocaine in order to prevent server resources from being exhausted by bad actors. Or require sign-in for all access.
gitea runs well on a low end server in my experience. self hosting on hetzner and it's somehow the holy trinity of cheap, fast and reliable. I previously (years ago) self hosted gitlab but I remember it being very slow which was the reason I moved on
Set up a GitHub action to auto-close any pull requests from anyone not on an approved list.
Leave a message in the pull request that if they want to argue their case for a pull request they can send a message through a communication channel of your choice, and say that anyone sending a message with AI generated text, even to help with language and grammar will be banned.
[delayed]
sourcehut.org would be my choice. Drew is pretty adamant about stuff and his morales. You will dislike somethings (UI and some policies) but will like majority of the things (tech like CI/CD etc). It's OSS and can be self-hosted as well. But I think drew fighting LLM scrappers on our behalf is good for us. It's also cheap and should progressively improve going forward.
It's my long term plan. And the project and company is setup in a way to be here for the long game. So, I am progressively moving my projects (private and in small numbers, but still...) from gitlab to sourcehut over this year or next.
Link - https://sourcehut.org/
Codeberg. They ONLY host open source software, it's sponsored by European institutions, Zig moved there too.
In the near future I'm also adding Forgejo to our Kexxu servers. Forgejo is basically Codeberg (but you need to host it). If you want a private repo on Kexxu just ask.
This is evidently not a popular opinion, but git repositories don’t need to be hosted on any platform. Your local repo is a complete copy and can be pulled and pushed from and to. If you really want a backup or “source of truth” copy, you can clone it anywhere you have shell access. We make so many simple things hard unnecessarily.
If this was a viable option, OP would just private his GitHub repos, but it's pretty obvious that he wants to make them available publicly.
If they have a blog or use a static site generator they could host their github repos online and use a plugin or something to display them. Or even just post links to the repos. It might cause bandwidth issues for popular projects and you wouldn't have any of the "social" features like stars (which in this case would be a feature) but it should be possible. Depending on how the backend is set up you might not even need to put the repos in the web path at all.
But I'd still say just use Codeberg. And see if there's an option to turn off PRs wherever your projects are hosted.
It depends on what you are looking to get out of the next platform.
For me, I'm not interested in the social aspect of coding anymore, so I have a Synology NAS running a git server accessible via ssh and I push my code there.
I use klaus (https://github.com/jonashaag/klaus) as a read only git web ui. My NAS is connected to my tailscale network so it's easy to view things on the go. It's a simple setup and works great.
Git. Move your platform to git.
See here for a howto: https://mikhailian.mova.org/posts/305-looking-for-a-european...
Did you mean something else? GitHub is based on Git.
Git isn't a platform for hosting source code, it's a program / protocol that GitHub and other platforms use.
Click on the link above.
New repository settings for configuring pull request access [feb13-2026]
https://github.blog/changelog/2026-02-13-new-repository-sett...
Codeberg.org is really great.
Also I recommend self-hosting Gitea for private projects and backing-up public projects
I use forgejo myself but both are great choices. Self hosting has improved dramatically over the last decade. So many things that I would never think we'd have access to, like open source PaaS software on-par with what VC companies offer (dokploy, coolify, or komodo).
For read-only code sharing, I would say use cgit and a VPS.
If you need a forge with all the bells, grab a copy of Forgejo and modify it to your liking.
Either way, consider using a VPS or a machine you own with Tailscale/VPN. It can be as simple as you'd like it to be.
Git is pretty simple to host yourself. For literally decades I've used git and gitolite to host git for me and a revolving team of developers.
But if you want it to be public though where anyone can access/fork it then you have to deal with "spam".
How do you deal with bot traffic and traffic from AI that's trying to get training data from your codebase
Same way you would for any other server. And I mean that 100% literally, given that at the command-line level the remote is simply a URL: https://git-scm.com/docs/git-remote
Only developers that have sent me their public ssh key have access to
I'm not familiar with git, but can you post a read-only version publicly so others can still access all the commit history but not be subjected to pull requests?
That's pretty much what git over https does by default (is it even possible to do read-write to a git repo over https instead of ssh?).
https://git-scm.com/docs/http-protocol
> is it even possible to do read-write to a git repo over https instead of ssh?
Yes; it's not only possible but very common: https://docs.github.com/en/get-started/git-basics/about-remo...
(IIRC it is in fact actually even sometimes preferable from a security standpoint; or at least that's the tentative conclusion I've reached under a few specific circumstances over the years, although the exact details elude my memory at the moment.)
If you have somewhere to host it you can go with https://forgejo.org/ and have control over everything.
Git doesn’t even need to be “hosted” in the traditional sense. The whole point of it is that it is distributed and you don’t actually need a centralized source of truth.
Fossil
https://fossil-scm.org
I think one important factor would be still being able to interact with a community of people who care for software and would like to put genuine thoughts. Whether it be for submitting bug reports, issues, PRs or security reports. Of course other platforms are not diverse as GitHub, it would be nice to see which other platforms are attracting such people. This in turn has a higher chance of interacting with such people.
Related question, is there a web-based self-hosted git replacement that's _light-weight_ (i.e. resilient to scraping)? Should have things like file view, file browser, etc but is not taxing on the server.
Forgejo. A single tiny golang binary, I think about 200mb. It has 75% of the functionality of gitlab with 5% of the resource requirements. I migrated to it and have never missed gitlab.
Forgejo is lightweight relative to some other options, but it is not resilient to scraping. Scrapers can access, commit-by-commit, each individual file, each file's "git blame", and each commit's repository archive... and they do. Most public Forgejo instances need to rely on a reverse proxy like Anubis or Iocaine in order to prevent server resources from being exhausted by bad actors. Or require sign-in for all access.
https://codeberg.org/forgejo/discussions/issues/320
gitea runs well on a low end server in my experience. self hosting on hetzner and it's somehow the holy trinity of cheap, fast and reliable. I previously (years ago) self hosted gitlab but I remember it being very slow which was the reason I moved on
I like Gitea.
You can disable PRs and Issues on GitHub. Though still good to migrate away for reliability considerations.
Codeberg
Codeberg hosts some decently high profile projects.
It’s probably the one to go for.
Consider donating for their hardware costs. They are completely transparent about their costs and where the money goes.
That's awesome, I didn't know they went to that level of transparency. I think this is a strong consideration.
PROJECTS: 608267
It seems to be alive.
Self hosted forgejo is pretty good for me
Pretty easy to setup a PR block for anybody you dont like. Like every other people. Or new people
Set up a GitHub action to auto-close any pull requests from anyone not on an approved list.
Leave a message in the pull request that if they want to argue their case for a pull request they can send a message through a communication channel of your choice, and say that anyone sending a message with AI generated text, even to help with language and grammar will be banned.
Today in: Non-issues
Codefloe
Codeberg.org
Not sure how the options suggested in this thread except closing the PRs to collaborators only are going to solve spam problem. Obscurity?
Gitlab
Move it to private GitHub repo. Really weird question if you open to public , pr is what’s expected .