{"slug": "gitea", "name": "Gitea", "category": "selfhosted", "category_name": "Self-hosted and home server", "description": "Lightweight, self-hostable Git forge with code hosting, issues, packages, and Actions-style CI.", "recommenders": 32, "commenters": 61, "warners": 5, "score": 29.492, "rising": 18.75, "first": "2025-11-14", "latest": "2026-10-30", "why": "HN commenters like Gitea as a lightweight, easy-to-run self-hosted GitHub alternative with built-in Actions-compatible CI and repo mirroring.", "why_is_quote": false, "has_verdict": true, "sentiment": {"recommend": 36, "neutral": 26, "compare": 2, "warn": 6}, "spark": [0, 0, 1, 1, 1, 2, 1, 5, 2, 20, 1, 2], "listed": true, "loved": ["Easy, lightweight", "CI/CD and Actions"], "caveat": "Corporate control", "short_quote": "It\u2019s been unbelievably fantastic and trivially easy to manage experience", "icon": false, "domain": "gitea.com", "github_repo": null, "official_url": "https://about.gitea.com", "pricing": "open source", "aliases": ["Gitea"], "verdict": [{"text": "HN commenters like Gitea as a lightweight, easy-to-run self-hosted GitHub alternative", "cites": [{"id": 789491744, "item_id": 49343234, "url": "https://news.ycombinator.com/item?id=49343234", "by": "dalleh", "date": "2026-08-18", "stance": "recommend", "quote": "Gitea is powerful and lightweight", "excerpt": "Try self-hosting Gitea with push mirror to GitLab or GitHub. Gitea is powerful and lightweight, and a push-mirror to another service is a plus as a backup location.", "context": "", "use_case": "self-hosted git hosting", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}, {"id": 789339265, "item_id": 49333704, "url": "https://news.ycombinator.com/item?id=49333704", "by": "r0b05", "date": "2026-08-17", "stance": "recommend", "quote": "Forgejo/Gitea is lightweight and easy to setup.", "excerpt": "Forgejo/Gitea is lightweight and easy to setup.", "context": "", "use_case": "git hosting", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}, {"id": 767142528, "item_id": 47946408, "url": "https://news.ycombinator.com/item?id=47946408", "by": "mawadev", "date": "2026-04-29", "stance": "recommend", "quote": "I use a self hosted Gitea instance and it's very simple.", "excerpt": "I use a self hosted Gitea instance and it's very simple. I was also surprised when Zig moved to Codeberg and had a big blog post about it, but now over time I start to see the reasons materialize in reality.", "context": "", "use_case": "self-hosted git", "switched_from": "", "story": "Before GitHub"}, {"id": 789358464, "item_id": 49334904, "url": "https://news.ycombinator.com/item?id=49334904", "by": "kamikazechaser", "date": "2026-08-17", "stance": "recommend", "quote": "All upgrades, including major changes, have been as easy as just changing the tag and reloading the container.", "excerpt": "I have been hosting gitea for our small org (docker + sqlite) for close to 5 years now. ~50+ repos, some large. All upgrades, including major changes, have been as easy as just changing the tag and reloading the container.", "context": "hosts for a small org, 50+ repos", "use_case": "small org git hosting", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}, {"id": 767142528, "item_id": 47946408, "url": "https://news.ycombinator.com/item?id=47946408", "by": "mawadev", "date": "2026-04-29", "stance": "recommend", "quote": "I use a self hosted Gitea instance and it's very simple.", "excerpt": "I use a self hosted Gitea instance and it's very simple. I was also surprised when Zig moved to Codeberg and had a big blog post about it, but now over time I start to see the reasons materialize in reality.", "context": "", "use_case": "self-hosted git", "switched_from": "", "story": "Before GitHub"}, {"id": 789311504, "item_id": 49331969, "url": "https://news.ycombinator.com/item?id=49331969", "by": "ukd1", "date": "2026-08-17", "stance": "recommend", "quote": "gitea is faster, and easier to manage and does everything I actually need", "excerpt": "I've used gitlab and gitea; gitea is faster, and easier to manage and does everything I actually need though, is less feature complete.", "context": "", "use_case": "git hosting", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}]}, {"text": " with built-in Actions-compatible CI and repo mirroring.", "cites": [{"id": 789507728, "item_id": 49344233, "url": "https://news.ycombinator.com/item?id=49344233", "by": "Jnr", "date": "2026-08-18", "stance": "recommend", "quote": "Gitea is far ahead in CI/CD features", "excerpt": "I did and then rolled back. Gitea is far ahead in CI/CD features, which is the main thing I want from my own git forge. And they also seem to keep adding more meaningful features, not just refactoring to keep some federation thing working.", "context": "self-hosts a git forge", "use_case": "self-hosted git forge", "switched_from": "Forgejo", "story": "Ask HN: Alternatives to GitHub"}, {"id": 789375009, "item_id": 49335938, "url": "https://news.ycombinator.com/item?id=49335938", "by": "Magicrafter13", "date": "2026-08-17", "stance": "recommend", "quote": "you should consider self hosted gitea, which uses the same Actions syntax", "excerpt": "My setup is a self hosted GitLab. From there, in most of my repos I setup repo mirroring (basically it just does its own SSH-based git push whenever I push commits to it) to GitHub, GitLab, and Codeberg. All of these are free (if you ignore electricity cost of hosting your own git server), and each one is a backup of sorts. I don't necessarily recommend starting with GitLab though unless you want advanced CI capabili", "context": "", "use_case": "GitHub-like self-hosted forge", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}, {"id": 781490768, "item_id": 48843173, "url": "https://news.ycombinator.com/item?id=48843173", "by": "hambos22", "date": "2026-07-09", "stance": "recommend", "quote": "I'm extremely satisfied with that setup. It is batteries included & fire and forget.", "excerpt": "It's been 9 months since I ditched Github. Currently I self-host Gitea [0], use its registry for Docker, NPM etc and act runners [1] for github actions alternative, everything secured under tailnet. I'm extremely satisfied with that setup. It is batteries included & fire and forget. Now I use Github only as backup by mirroring my self hosted repos. [0] https://gitea.com [1] https://docs.gitea.com/usage/actions/act-ru", "context": "self-hoster", "use_case": "self-hosted git, registry, CI", "switched_from": "GitHub", "story": "Why developers are ditching GitHub for Codeberg and self-hosting alternatives"}, {"id": 799837424, "item_id": 49989839, "url": "https://news.ycombinator.com/item?id=49989839", "by": "sunaookami", "date": "2026-10-07", "stance": "recommend", "quote": "I can also recommend hosting your own Gitea/Forgejo instance, it has an automatic repository mirroring feature", "excerpt": "I can also recommend hosting your own Gitea/Forgejo instance, it has an automatic repository mirroring feature that fetches the repo regularly. I use it to mirror some \"high-risk\" repos.", "context": "", "use_case": "mirroring repos", "switched_from": "", "story": "AnyPS5: Port PS5 binaries to PC without emulation (87% system libraries mapped)"}, {"id": 789491744, "item_id": 49343234, "url": "https://news.ycombinator.com/item?id=49343234", "by": "dalleh", "date": "2026-08-18", "stance": "recommend", "quote": "Gitea is powerful and lightweight", "excerpt": "Try self-hosting Gitea with push mirror to GitLab or GitHub. Gitea is powerful and lightweight, and a push-mirror to another service is a plus as a backup location.", "context": "", "use_case": "self-hosted git hosting", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}]}, {"text": " Common caveats are that it is less feature-complete than GitLab", "cites": [{"id": 789311504, "item_id": 49331969, "url": "https://news.ycombinator.com/item?id=49331969", "by": "ukd1", "date": "2026-08-17", "stance": "recommend", "quote": "gitea is faster, and easier to manage and does everything I actually need", "excerpt": "I've used gitlab and gitea; gitea is faster, and easier to manage and does everything I actually need though, is less feature complete.", "context": "", "use_case": "git hosting", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}, {"id": 789465200, "item_id": 49341575, "url": "https://news.ycombinator.com/item?id=49341575", "by": "cik", "date": "2026-08-17", "stance": "recommend", "quote": "at a scale of 250 contributors (which we hit), Gitea solved all the problems", "excerpt": "I've had both self hosted GitHub (enterprise), and GitLab in the last year. It really deoends what you're trying to replace and how you structure the things you're hoping to replace. Also, the value of investing in your separation of concern or safety valve. To me, still, at a scale of 250 contributors (which we hit), Gitea solved all the problems. The fact that there's a command line tool (tea) that mostly works, me", "context": "ran self-hosted GitHub Enterprise and GitLab, 250 contributors", "use_case": "git hosting for 250 contributors", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}, {"id": 789453200, "item_id": 49340825, "url": "https://news.ycombinator.com/item?id=49340825", "by": "woodrowbarlow", "date": "2026-08-17", "stance": "recommend", "quote": "gitea/forgejo both do an 80% job of covering these needs", "excerpt": "gitea/forgejo both do an 80% job of covering these needs, ime. they have mostly-GH-compatible APIs.", "context": "", "use_case": "GitHub replacement", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}]}, {"text": " and that its for-profit backing makes some worry about a license change, leading them to prefer Forgejo.", "cites": [{"id": 784433040, "item_id": 49027065, "url": "https://news.ycombinator.com/item?id=49027065", "by": "charlie-83", "date": "2026-07-23", "stance": "warn", "quote": "Ability for rug pull is much greater for gitea imo.", "excerpt": "(Disclaimer: I use Gitea daily for work and Codeberg daily for personal stuff. I prefer Codeberg) Gitea is developed by a for-profit organisation while Forgejo is developed by a non-profit. Ability for rug pull is much greater for gitea imo. Gitea (organisation) already develops non-foss software to sit on top of Gitea (software). Gitea requires copyright attributions for contributions so is more able to change the G", "context": "uses Gitea daily for work", "use_case": "git hosting", "switched_from": "", "story": "I Regret Migrating to Codeberg"}, {"id": 742415441, "item_id": 46400965, "url": "https://news.ycombinator.com/item?id=46400965", "by": "weitendorf", "date": "2025-12-27", "stance": "warn", "quote": "it was not clear to us to what extent gitea would play nicely with us", "excerpt": "Only a very, very small fraction of open source projects get to the point where they legitimately need committees and working groups and maintainer politics/drama. > quite a few people would consider \"benevolent dictator for life\" an outdated model for open source communities. I think what most people dislike are rugpulls and when commercial interests override what contributors/users/maintainers are trying to get out", "context": "", "use_case": "self-hosted git forge", "switched_from": "", "story": "How uv got so fast"}, {"id": 785686674, "item_id": 49105417, "url": "https://news.ycombinator.com/item?id=49105417", "by": "weitendorf", "date": "2026-07-29", "stance": "warn", "quote": "I also evaluated gitea and saw they were offering a commercial multitenant service where my 3p hosting wouldn't be welcome", "excerpt": "There are two that I know of, and neither seem to do a better job at solving my problem of providing a place to host and distribute open source software. I hosted my own forgejo server used by actual other people * very slightly* before it was cool, and just to get started I had to go through this giant list of configs governing important auth/cred stuff and also random ass features and everything else, then I set up", "context": "", "use_case": "", "switched_from": "", "story": "GitHub is the wrong shape for this new world"}]}], "praise": [{"label": "Easy, lightweight", "summary": "Commenters say it is simple to set up, light on resources, and painless to upgrade.", "quotes": [{"id": 789339265, "item_id": 49333704, "url": "https://news.ycombinator.com/item?id=49333704", "by": "r0b05", "date": "2026-08-17", "stance": "recommend", "quote": "Forgejo/Gitea is lightweight and easy to setup.", "excerpt": "Forgejo/Gitea is lightweight and easy to setup.", "context": "", "use_case": "git hosting", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}, {"id": 789317344, "item_id": 49332334, "url": "https://news.ycombinator.com/item?id=49332334", "by": "lnenad", "date": "2026-08-17", "stance": "recommend", "quote": "I'm running gitea successfully with very little resources.", "excerpt": "I'm running gitea successfully with very little resources.", "context": "", "use_case": "git hosting", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}, {"id": 789358464, "item_id": 49334904, "url": "https://news.ycombinator.com/item?id=49334904", "by": "kamikazechaser", "date": "2026-08-17", "stance": "recommend", "quote": "All upgrades, including major changes, have been as easy as just changing the tag and reloading the container.", "excerpt": "I have been hosting gitea for our small org (docker + sqlite) for close to 5 years now. ~50+ repos, some large. All upgrades, including major changes, have been as easy as just changing the tag and reloading the container.", "context": "hosts for a small org, 50+ repos", "use_case": "small org git hosting", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}]}, {"label": "CI/CD and Actions", "summary": "Its runners use GitHub Actions syntax, and one user says its CI/CD is ahead of Forgejo's.", "quotes": [{"id": 789507728, "item_id": 49344233, "url": "https://news.ycombinator.com/item?id=49344233", "by": "Jnr", "date": "2026-08-18", "stance": "recommend", "quote": "Gitea is far ahead in CI/CD features", "excerpt": "I did and then rolled back. Gitea is far ahead in CI/CD features, which is the main thing I want from my own git forge. And they also seem to keep adding more meaningful features, not just refactoring to keep some federation thing working.", "context": "self-hosts a git forge", "use_case": "self-hosted git forge", "switched_from": "Forgejo", "story": "Ask HN: Alternatives to GitHub"}, {"id": 789375009, "item_id": 49335938, "url": "https://news.ycombinator.com/item?id=49335938", "by": "Magicrafter13", "date": "2026-08-17", "stance": "recommend", "quote": "you should consider self hosted gitea, which uses the same Actions syntax", "excerpt": "My setup is a self hosted GitLab. From there, in most of my repos I setup repo mirroring (basically it just does its own SSH-based git push whenever I push commits to it) to GitHub, GitLab, and Codeberg. All of these are free (if you ignore electricity cost of hosting your own git server), and each one is a backup of sorts. I don't necessarily recommend starting with GitLab though unless you want advanced CI capabili", "context": "", "use_case": "GitHub-like self-hosted forge", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}, {"id": 777324000, "item_id": 48582750, "url": "https://news.ycombinator.com/item?id=48582750", "by": "OhSoHumble", "date": "2026-06-18", "stance": "recommend", "quote": "it's extremely easy to setup, maintain, and build CI/CD on top of.", "excerpt": "I personally just self-host. The project that I'm working on right now uses Gitea internally with an action runner. I use Digital Ocean and run a Nomad cluster on top of that. Gitea and its action runner builds container images and then pushes nomad job definitions to the cluster. I have zero downtime deployment and rolling deploys. Dagger.io is in there somewhere to make local CI mirror what happens in the action ru", "context": "self-hosts own project", "use_case": "self-hosted git and CI", "switched_from": "", "story": "The Forge We Deserve"}]}, {"label": "Repo mirroring", "summary": "Users rely on its pull and push mirroring for backups and GitHub visibility.", "quotes": [{"id": 799837424, "item_id": 49989839, "url": "https://news.ycombinator.com/item?id=49989839", "by": "sunaookami", "date": "2026-10-07", "stance": "recommend", "quote": "I can also recommend hosting your own Gitea/Forgejo instance, it has an automatic repository mirroring feature", "excerpt": "I can also recommend hosting your own Gitea/Forgejo instance, it has an automatic repository mirroring feature that fetches the repo regularly. I use it to mirror some \"high-risk\" repos.", "context": "", "use_case": "mirroring repos", "switched_from": "", "story": "AnyPS5: Port PS5 binaries to PC without emulation (87% system libraries mapped)"}, {"id": 789491744, "item_id": 49343234, "url": "https://news.ycombinator.com/item?id=49343234", "by": "dalleh", "date": "2026-08-18", "stance": "recommend", "quote": "Gitea is powerful and lightweight", "excerpt": "Try self-hosting Gitea with push mirror to GitLab or GitHub. Gitea is powerful and lightweight, and a push-mirror to another service is a plus as a backup location.", "context": "", "use_case": "self-hosted git hosting", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}, {"id": 781499248, "item_id": 48843703, "url": "https://news.ycombinator.com/item?id=48843703", "by": "Jnr", "date": "2026-07-09", "stance": "recommend", "quote": "I similarly have been using Gitea for some years. I use it as my main forge", "excerpt": "I similarly have been using Gitea for some years. I use it as my main forge and mirror to Github for discoverability and community reports and contributions. For public projects I have workflows that can publish and push containers to both Gitea and Github.", "context": "", "use_case": "main forge with GitHub mirror", "switched_from": "", "story": "Why developers are ditching GitHub for Codeberg and self-hosting alternatives"}]}, {"label": "Feels like GitHub", "summary": "Users say it works and feels like GitHub, with mostly GitHub-compatible APIs.", "quotes": [{"id": 745411504, "item_id": 46588219, "url": "https://news.ycombinator.com/item?id=46588219", "by": "rcarmo", "date": "2026-01-12", "stance": "recommend", "quote": "I love Gitea because it feels a lot like GitHub", "excerpt": "It still looks _exactly_ the same way as a decade ago (well, there were some CSS tweaks). I used to use it for my own projects until friction overcame my tastes, but I remember one of the things I really didn't like about it was that the web interface was _so_ dated. I love Gitea because it feels a lot like GitHub (and hence I don't have to remember where things are). Edit: Wow, it supports markdown now? and a forum?", "context": "", "use_case": "git hosting", "switched_from": "Fossil", "story": "Fossil versus Git"}, {"id": 789343937, "item_id": 49333996, "url": "https://news.ycombinator.com/item?id=49333996", "by": "rhdunn", "date": "2026-08-17", "stance": "recommend", "quote": "Forejo and Gitea are good for this.", "excerpt": "It depends on what you are after? 1. Do you want something that works and feels like GitHub? -- Forejo and Gitea are good for this. 2. Do you want a place to host git repositories with minimal hassle? -- GitLab, CodeBerg, and others are available. 3. Do you have your own hosting infrastructure? You could use gitolite and CGit/GitWeb on that hosting platform or local hardware. 4. Do you just want to host repositories?", "context": "", "use_case": "GitHub-like forge", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}, {"id": 789453200, "item_id": 49340825, "url": "https://news.ycombinator.com/item?id=49340825", "by": "woodrowbarlow", "date": "2026-08-17", "stance": "recommend", "quote": "gitea/forgejo both do an 80% job of covering these needs", "excerpt": "gitea/forgejo both do an 80% job of covering these needs, ime. they have mostly-GH-compatible APIs.", "context": "", "use_case": "GitHub replacement", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}]}, {"label": "Speed", "summary": "Users describe it as faster than GitLab or GitHub in their use.", "quotes": [{"id": 789311504, "item_id": 49331969, "url": "https://news.ycombinator.com/item?id=49331969", "by": "ukd1", "date": "2026-08-17", "stance": "recommend", "quote": "gitea is faster, and easier to manage and does everything I actually need", "excerpt": "I've used gitlab and gitea; gitea is faster, and easier to manage and does everything I actually need though, is less feature complete.", "context": "", "use_case": "git hosting", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}, {"id": 752896496, "item_id": 47056031, "url": "https://news.ycombinator.com/item?id=47056031", "by": "gerdesj", "date": "2026-02-17", "stance": "recommend", "quote": "I now run a local Gitea.  Its rather more performant and uptime is rather better too!", "excerpt": "I used to be a GH fanboi. Why not - very convenient ... errm and that's it. I now run a local Gitea. Its rather more performant and uptime is rather better too! I have no idea why on earth I even considered using GH in the first place. Laziness I suppose.", "context": "", "use_case": "self-hosted git", "switched_from": "GitHub", "story": "Gentoo on Codeberg"}, {"id": 789723568, "item_id": 49357723, "url": "https://news.ycombinator.com/item?id=49357723", "by": "BatteryMountain", "date": "2026-08-18", "stance": "recommend", "quote": "I just self-host Gitea.", "excerpt": "I just self-host Gitea. I made own build server (with all the SDK's I need) that runs next to it and I use SeaweedFS for storage. Works amazingly well. So I have automated builds and artifact storage for my git repos's. It all lighting fast too.", "context": "", "use_case": "self-hosted git with builds", "switched_from": "", "story": "Cursor launches Origin, GitHub alternative"}]}, {"label": "Package registry", "summary": "Its built-in registry replaced Nexus or other registries for Docker, NPM and other packages.", "quotes": [{"id": 781490768, "item_id": 48843173, "url": "https://news.ycombinator.com/item?id=48843173", "by": "hambos22", "date": "2026-07-09", "stance": "recommend", "quote": "I'm extremely satisfied with that setup. It is batteries included & fire and forget.", "excerpt": "It's been 9 months since I ditched Github. Currently I self-host Gitea [0], use its registry for Docker, NPM etc and act runners [1] for github actions alternative, everything secured under tailnet. I'm extremely satisfied with that setup. It is batteries included & fire and forget. Now I use Github only as backup by mirroring my self hosted repos. [0] https://gitea.com [1] https://docs.gitea.com/usage/actions/act-ru", "context": "self-hoster", "use_case": "self-hosted git, registry, CI", "switched_from": "GitHub", "story": "Why developers are ditching GitHub for Codeberg and self-hosting alternatives"}, {"id": 777330176, "item_id": 48583136, "url": "https://news.ycombinator.com/item?id=48583136", "by": "KronisLV", "date": "2026-06-18", "stance": "recommend", "quote": "Also running Gitea, pretty pleasant experience!", "excerpt": "Also running Gitea, pretty pleasant experience! Moved over from Sonatype Nexus to Gitea Packages as well since administering Nexus is annoying: https://docs.gitea.com/usage/packages However for CI I use WoodpeckerCI (previously used Drone but migrated over), it works well with containers and is delightfully simple: https://woodpecker-ci.org/ Though I guess in my case I don't collaborate with others much outside of wo", "context": "", "use_case": "self-hosted git forge", "switched_from": "", "story": "The Forge We Deserve"}]}], "caveats": [{"label": "Corporate control", "summary": "Some see a for-profit company and copyright attribution as a risk of a future license change.", "quotes": [{"id": 784433040, "item_id": 49027065, "url": "https://news.ycombinator.com/item?id=49027065", "by": "charlie-83", "date": "2026-07-23", "stance": "warn", "quote": "Ability for rug pull is much greater for gitea imo.", "excerpt": "(Disclaimer: I use Gitea daily for work and Codeberg daily for personal stuff. I prefer Codeberg) Gitea is developed by a for-profit organisation while Forgejo is developed by a non-profit. Ability for rug pull is much greater for gitea imo. Gitea (organisation) already develops non-foss software to sit on top of Gitea (software). Gitea requires copyright attributions for contributions so is more able to change the G", "context": "uses Gitea daily for work", "use_case": "git hosting", "switched_from": "", "story": "I Regret Migrating to Codeberg"}, {"id": 742415441, "item_id": 46400965, "url": "https://news.ycombinator.com/item?id=46400965", "by": "weitendorf", "date": "2025-12-27", "stance": "warn", "quote": "it was not clear to us to what extent gitea would play nicely with us", "excerpt": "Only a very, very small fraction of open source projects get to the point where they legitimately need committees and working groups and maintainer politics/drama. > quite a few people would consider \"benevolent dictator for life\" an outdated model for open source communities. I think what most people dislike are rugpulls and when commercial interests override what contributors/users/maintainers are trying to get out", "context": "", "use_case": "self-hosted git forge", "switched_from": "", "story": "How uv got so fast"}, {"id": 785686674, "item_id": 49105417, "url": "https://news.ycombinator.com/item?id=49105417", "by": "weitendorf", "date": "2026-07-29", "stance": "warn", "quote": "I also evaluated gitea and saw they were offering a commercial multitenant service where my 3p hosting wouldn't be welcome", "excerpt": "There are two that I know of, and neither seem to do a better job at solving my problem of providing a place to host and distribute open source software. I hosted my own forgejo server used by actual other people * very slightly* before it was cool, and just to get started I had to go through this giant list of configs governing important auth/cred stuff and also random ass features and everything else, then I set up", "context": "", "use_case": "", "switched_from": "", "story": "GitHub is the wrong shape for this new world"}]}, {"label": "Missing features", "summary": "Users say it covers about 80% of needs and is less feature-complete than GitLab.", "quotes": [{"id": 789311504, "item_id": 49331969, "url": "https://news.ycombinator.com/item?id=49331969", "by": "ukd1", "date": "2026-08-17", "stance": "recommend", "quote": "gitea is faster, and easier to manage and does everything I actually need", "excerpt": "I've used gitlab and gitea; gitea is faster, and easier to manage and does everything I actually need though, is less feature complete.", "context": "", "use_case": "git hosting", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}, {"id": 789465200, "item_id": 49341575, "url": "https://news.ycombinator.com/item?id=49341575", "by": "cik", "date": "2026-08-17", "stance": "recommend", "quote": "at a scale of 250 contributors (which we hit), Gitea solved all the problems", "excerpt": "I've had both self hosted GitHub (enterprise), and GitLab in the last year. It really deoends what you're trying to replace and how you structure the things you're hoping to replace. Also, the value of investing in your separation of concern or safety valve. To me, still, at a scale of 250 contributors (which we hit), Gitea solved all the problems. The fact that there's a command line tool (tea) that mostly works, me", "context": "ran self-hosted GitHub Enterprise and GitLab, 250 contributors", "use_case": "git hosting for 250 contributors", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}, {"id": 789453200, "item_id": 49340825, "url": "https://news.ycombinator.com/item?id=49340825", "by": "woodrowbarlow", "date": "2026-08-17", "stance": "recommend", "quote": "gitea/forgejo both do an 80% job of covering these needs", "excerpt": "gitea/forgejo both do an 80% job of covering these needs, ime. they have mostly-GH-compatible APIs.", "context": "", "use_case": "GitHub replacement", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}]}, {"label": "Limited integrations", "summary": "Fewer third-party tools support Gitea, and repos mirrored to GitHub can confuse users.", "quotes": [{"id": 789361632, "item_id": 49335102, "url": "https://news.ycombinator.com/item?id=49335102", "by": "KronisLV", "date": "2026-08-17", "stance": "recommend", "quote": "eventually ended up moving over to Gitea + WoodpeckerCI + Nexus", "excerpt": "I also self-hosted GitLab for some years, eventually ended up moving over to Gitea + WoodpeckerCI + Nexus (with Nexus for a while). Well there was DroneCI in the middle for a bit there as well, but Woodpecker is perfectly okay and more free in regards to what you can do. Only thing is that not that much other software out there supports Gitea, for example Kepler only knows about GitHub, GitLab, Jira, Trello and Linea", "context": "", "use_case": "git hosting", "switched_from": "GitLab", "story": "Ask HN: Alternatives to GitHub"}, {"id": 789317888, "item_id": 49332368, "url": "https://news.ycombinator.com/item?id=49332368", "by": "dboreham", "date": "2026-08-17", "stance": "neutral", "quote": "Our practical solution was to just mirror our Gitea repos into GitHub.", "excerpt": "There was some work to address this issue with federation in Gitea, but I haven't kept up with how well that went. Our practical solution was to just mirror our Gitea repos into GitHub. That way they're discoverable, releases can be downloaded, and so on. Not a perfect solution because users get confused as to why they can't open issues, etc.", "context": "", "use_case": "self-hosted git with GitHub mirror", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}]}, {"label": "Community support", "summary": "One team found Discord-only support left them stuck several times.", "quotes": [{"id": 789371056, "item_id": 49335691, "url": "https://news.ycombinator.com/item?id=49335691", "by": "scientifik", "date": "2026-08-17", "stance": "warn", "quote": "the support mechanism was \"Beg for help on Discord and hope someone replies\", this left us high and dry a few times", "excerpt": "I tried Gitea for a while but the support mechanism was \"Beg for help on Discord and hope someone replies\", this left us high and dry a few times.", "context": "", "use_case": "git hosting", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}]}, {"label": "Flat repo structure", "summary": "The user/repository layout lacks GitLab-style nested groups.", "quotes": [{"id": 789348000, "item_id": 49334250, "url": "https://news.ycombinator.com/item?id=49334250", "by": "rhdunn", "date": "2026-08-17", "stance": "warn", "quote": "Two of the big issues I had were around the user/repository forced structure.", "excerpt": "Two of the big issues I had were around the user/repository forced structure. That works to some extent when you have multiple users with a small number of repositories. But for my personal projects I wanted more control over the structure and grouping. I worked around it to some extent by having an organisation per category, but that doesn't work at scale. For example, you can't group Text-to-Speech projects around ", "context": "", "use_case": "personal project hosting", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}]}, {"label": "Monolithic design", "summary": "One commenter dislikes that forges like Gitea bundle everything into one interface.", "quotes": [{"id": 789422579, "item_id": 49338911, "url": "https://news.ycombinator.com/item?id=49338911", "by": "0xbadcafebee", "date": "2026-08-17", "stance": "warn", "quote": "I have a pretty bad taste in my mouth from GitHub, GitLab, Forgejo, Gitea, etc.", "excerpt": "I have a pretty bad taste in my mouth from GitHub, GitLab, Forgejo, Gitea, etc. They all attempt to hijack Git itself and become a monolith and single custom interface, rather than independent components that work around the Git repo. I want the Unix philosophy applied to Git and other functions. That way I'm not forced to switch the entire kitchen sink out when some single piece of functionality or hoster ends up br", "context": "", "use_case": "git hosting", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}]}], "who": [{"by": "deniska", "context": "sole user of repos", "url": "https://news.ycombinator.com/item?id=50023492", "date": "2026-10-09"}, {"by": "KomoD", "context": "self-hoster", "url": "https://news.ycombinator.com/item?id=49748253", "date": "2026-09-17"}, {"by": "emrearmagan", "context": "plugin author adding Gitea/Forgejo support", "url": "https://news.ycombinator.com/item?id=49503084", "date": "2026-08-30"}, {"by": "geekraver", "context": "self-hosts", "url": "https://news.ycombinator.com/item?id=49348103", "date": "2026-08-18"}, {"by": "Jnr", "context": "self-hosts a git forge", "url": "https://news.ycombinator.com/item?id=49344233", "date": "2026-08-18"}, {"by": "globular-toast", "context": "runs a self-hosted Gitea instance", "url": "https://news.ycombinator.com/item?id=49341769", "date": "2026-08-17"}, {"by": "cik", "context": "ran self-hosted GitHub Enterprise and GitLab, 250 contributors", "url": "https://news.ycombinator.com/item?id=49341575", "date": "2026-08-17"}, {"by": "nurdism", "context": "self-hosts", "url": "https://news.ycombinator.com/item?id=49340203", "date": "2026-08-17"}, {"by": "kamikazechaser", "context": "hosts for a small org, 50+ repos", "url": "https://news.ycombinator.com/item?id=49334904", "date": "2026-08-17"}, {"by": "td-andrew", "context": "self-hosts on internal network", "url": "https://news.ycombinator.com/item?id=49332438", "date": "2026-08-17"}, {"by": "gerdesj", "context": "works at a company", "url": "https://news.ycombinator.com/item?id=49104475", "date": "2026-07-29"}, {"by": "hambos22", "context": "self-hoster", "url": "https://news.ycombinator.com/item?id=48843173", "date": "2026-07-09"}], "tags": ["self-hostable", "for private projects", "for small teams", "for leaving GitHub", "for low-resource servers"], "use_cases": ["git hosting", "self-hosted git forge", "self-hosted git", "self-hosted git hosting", "self-hosted code hosting", "self-hosted repo and ci"], "compared": [{"slug": "forgejo", "name": "Forgejo", "co": 46, "switched_from": 1, "switched_to": 5}, {"slug": "github", "name": "GitHub", "co": 26, "switched_from": 7, "switched_to": 0}, {"slug": "gitlab", "name": "GitLab", "co": 19, "switched_from": 2, "switched_to": 0}, {"slug": "codeberg", "name": "Codeberg", "co": 14, "switched_from": 0, "switched_to": 0}, {"slug": "gitolite", "name": "Gitolite", "co": 4, "switched_from": 1, "switched_to": 1}, {"slug": "tangled", "name": "Tangled", "co": 4, "switched_from": 0, "switched_to": 1}, {"slug": "cgit", "name": "cgit", "co": 4, "switched_from": 0, "switched_to": 1}], "makers": [{"id": 789324400, "item_id": 49332775, "url": "https://news.ycombinator.com/item?id=49332775", "by": "techknowlogick", "date": "2026-08-17", "stance": "recommend", "quote": "I'm one of the project leads of Gitea", "excerpt": "Woo! Thanks for the shoutout. I'm one of the project leads of Gitea, and if you ever run into any issues please feel free to hop into our chat:)", "context": "Gitea project lead", "use_case": "self-hosted git", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}, {"id": 789324224, "item_id": 49332764, "url": "https://news.ycombinator.com/item?id=49332764", "by": "techknowlogick", "date": "2026-08-17", "stance": "neutral", "quote": "I'm one of the project leads of Gitea and we've put a ton of work into Gitea Actions", "excerpt": "I'm one of the project leads of Gitea and we've put a ton of work into Gitea Actions, I'd be interested in any compatibility gaps that you've run into.", "context": "Gitea project lead", "use_case": "CI actions", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}, {"id": 789323712, "item_id": 49332732, "url": "https://news.ycombinator.com/item?id=49332732", "by": "techknowlogick", "date": "2026-08-17", "stance": "recommend", "quote": "Gitea is still community driven as before", "excerpt": "FWIW Gitea is still community driven as before, there are yearly elections for the community maintainers for TOC leadership. disclaimer: I'm one of the project leads of Gitea", "context": "Gitea project lead", "use_case": "", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}, {"id": 789323296, "item_id": 49332706, "url": "https://news.ycombinator.com/item?id=49332706", "by": "techknowlogick", "date": "2026-08-17", "stance": "neutral", "quote": "I'm one of the project leads of Gitea", "excerpt": "That's great to hear! I'm one of the project leads of Gitea, and if you ever run into any issues please feel free to hop into our chatroom:)", "context": "Gitea project lead", "use_case": "", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}, {"id": 789323056, "item_id": 49332691, "url": "https://news.ycombinator.com/item?id=49332691", "by": "techknowlogick", "date": "2026-08-17", "stance": "neutral", "quote": "I'm one of the project leads of Gitea", "excerpt": "Best of luck! I'm one of the project leads of Gitea, and if you run into any issues please feel free to hop into our chat:)", "context": "Gitea project lead", "use_case": "", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}, {"id": 789322928, "item_id": 49332683, "url": "https://news.ycombinator.com/item?id=49332683", "by": "techknowlogick", "date": "2026-08-17", "stance": "neutral", "quote": "I'm one of the project leads of Gitea.", "excerpt": "I'm one of the project leads of Gitea. I'd be interested in knowing which features you are missing from Gitea compared to Gitlab? We are doing some backlog grooming right now, and input is very appreciated:)", "context": "Gitea project lead", "use_case": "", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}], "threads": [{"url": "https://news.ycombinator.com/item?id=49331033", "title": "Ask HN: Alternatives to GitHub", "mentions": 42}, {"url": "https://news.ycombinator.com/item?id=49985548", "title": "Ask HN: What do you run on a $5 VPS that's worth keeping online 24/7?", "mentions": 4}, {"url": "https://news.ycombinator.com/item?id=49103910", "title": "GitHub is the wrong shape for this new world", "mentions": 3}, {"url": "https://news.ycombinator.com/item?id=48842611", "title": "Why developers are ditching GitHub for Codeberg and self-hosting alternatives", "mentions": 2}, {"url": "https://news.ycombinator.com/item?id=48582147", "title": "The Forge We Deserve", "mentions": 2}, {"url": "https://news.ycombinator.com/item?id=50305573", "title": "The federated code forge", "mentions": 1}], "sentiment_by_month": {"2025-11": {"warn": 1}, "2025-12": {"warn": 1}, "2026-01": {"recommend": 1, "neutral": 1}, "2026-02": {"neutral": 1, "recommend": 1}, "2026-03": {"recommend": 1}, "2026-04": {"recommend": 2, "neutral": 1}, "2026-05": {"recommend": 1, "compare": 1}, "2026-06": {"recommend": 5, "neutral": 1}, "2026-07": {"recommend": 2, "neutral": 3, "warn": 2}, "2026-08": {"neutral": 13, "compare": 1, "recommend": 20, "warn": 2}, "2026-09": {"recommend": 1}, "2026-10": {"recommend": 2, "neutral": 6}}, "quotes": [{"id": 804907761, "item_id": 50306735, "url": "https://news.ycombinator.com/item?id=50306735", "by": "stryan", "date": "2026-10-30", "stance": "neutral", "quote": "main repo and CI is on my self-hosted Gitea", "excerpt": "Really looking forward to seeing Tangled develop! I've got a side project that's main repo and CI is on my self-hosted Gitea but code and releases are mirrored to Github; I'm hoping to move it off Gitea and onto Tangled for code/releases/potentially CI and just keep Github for discoverability/backups/namespace \"squatting\". Just need git-bug to add a Tangled bridge so I can keep issues synced and (ideally) for there t", "context": "", "use_case": "self-hosted repo and CI", "switched_from": "", "story": "The federated code forge"}, {"id": 800391057, "item_id": 50024441, "url": "https://news.ycombinator.com/item?id=50024441", "by": "K0IN", "date": "2026-10-09", "stance": "neutral", "quote": "git backup(I use gittea) to backup public repos", "excerpt": "TeamSpeak, git backup(I use gittea) to backup public repos, backups in general, my website/blog, game servers, ssh(obv) for local app port forward, litellm as ai bridge to monitor usage, some of my own apps: (notification broker to send messages to my devices using a simple http push), everything behind traefik (with let's e encrypt)", "context": "", "use_case": "backing up public repos", "switched_from": "", "story": "Ask HN: What do you run on a $5 VPS that's worth keeping online 24/7?"}, {"id": 800375875, "item_id": 50023492, "url": "https://news.ycombinator.com/item?id=50023492", "by": "deniska", "date": "2026-10-09", "stance": "neutral", "quote": "I also have gitea installed, but I don't really see the appeal if I'm the sole user of a repo.", "excerpt": "It's not exactly a cheap VPS, it's a server with 376 gb of ram my dad bought on ebay, put on co-location, and I help to administer it, and can create some VMs on it. But some of the things I do on these VMs are in principle similar to what I would do a $5 vps: - irssi running in screen (irc client, yes, occasionally I still talk to people on there) - my very small imgur-inspired image hosting (https://github.com/deni", "context": "sole user of repos", "use_case": "git hosting", "switched_from": "", "story": "Ask HN: What do you run on a $5 VPS that's worth keeping online 24/7?"}, {"id": 800351057, "item_id": 50021941, "url": "https://news.ycombinator.com/item?id=50021941", "by": "charles-kuperus", "date": "2026-10-09", "stance": "neutral", "quote": "add bash shell scripts to my self-hosted Gitea repositories for common tasks", "excerpt": "For the last 10 years, I was wanting to make the move to Linux. It had to come down to a unfortunate \"event\" of me not working and struggling to find work for the last year since 2025 July. But because I am a white male and being discriminated against from the Current South African Government (ANC - African National Congress), forcing companies in South Africa to adhere to BBBEE Laws (Broad Based Black Economic Empow", "context": "", "use_case": "self-hosted git repos", "switched_from": "", "story": "My Thoughts on Running Linux vs. Windows \u00b7 Charles Kuperus"}, {"id": 800308595, "item_id": 50019287, "url": "https://news.ycombinator.com/item?id=50019287", "by": "proxysna", "date": "2026-10-09", "stance": "neutral", "quote": "Forgejo/Gitea as local git server", "excerpt": "Maintenance is not an issue, if vm/pc setup is done correctly. Simple is better in that case. Just a docker-compose or two or three with app data stored directly on disk to be able to move things easily between VM/PC's if needed. If hosted on VPS, set up your containers to be accesible only through VPN and you're good to go. Things i use daily-ish: - Wireguard with wg-easy to access my home network and other way arou", "context": "", "use_case": "local git server", "switched_from": "", "story": "Ask HN: What do you run on a $5 VPS that's worth keeping online 24/7?"}, {"id": 800258131, "item_id": 50016133, "url": "https://news.ycombinator.com/item?id=50016133", "by": "ahf8Aithaex7Nai", "date": "2026-10-09", "stance": "neutral", "quote": "I also run a few personal web services: Immich, Gitea, Bookstack, Jellyfin, and more.", "excerpt": "I use Yggdrasil [0] to connect my computers. This ensures they are always connected within a flat, private IPv6 namespace. However, two computers cannot find each other if they are both behind NAT on different networks. At least one of them must be reachable by the other via TCP. That\u2019s why I use the cheapest VPS I could find as a globally accessible Yggdrasil hub. I\u2019ve been running it this way for many years now, an", "context": "", "use_case": "git hosting", "switched_from": "", "story": "Ask HN: What do you run on a $5 VPS that's worth keeping online 24/7?"}, {"id": 799911233, "item_id": 49994452, "url": "https://news.ycombinator.com/item?id=49994452", "by": "embedding-shape", "date": "2026-10-07", "stance": "recommend", "quote": "Tangled, Codeberg or self-hosted Forgejo (my approach) or Gitea are all good alternative solutions here.", "excerpt": "I'm surprised people still rely so much on GitHub. Anything I want to (have to*) be able to deploy on a moments notice, for hotfixes and what not, was moved away from Github like a year ago, because of the horrible uptime. Did others not get the memo yet? It's not getting better, if anything it's getting worse. Best time to get off GitHub was yesterday, the second-best day to get off is today. Tangled, Codeberg or se", "context": "", "use_case": "self-hosted git hosting", "switched_from": "", "story": "Incident with Git Operations, Pull Requests and Actions \u2013 Resolved"}, {"id": 799837424, "item_id": 49989839, "url": "https://news.ycombinator.com/item?id=49989839", "by": "sunaookami", "date": "2026-10-07", "stance": "recommend", "quote": "I can also recommend hosting your own Gitea/Forgejo instance, it has an automatic repository mirroring feature", "excerpt": "I can also recommend hosting your own Gitea/Forgejo instance, it has an automatic repository mirroring feature that fetches the repo regularly. I use it to mirror some \"high-risk\" repos.", "context": "", "use_case": "mirroring repos", "switched_from": "", "story": "AnyPS5: Port PS5 binaries to PC without emulation (87% system libraries mapped)"}, {"id": 795972054, "item_id": 49748253, "url": "https://news.ycombinator.com/item?id=49748253", "by": "KomoD", "date": "2026-09-17", "stance": "recommend", "quote": "Authelia, Immich, Jellyfin, Fusion, qBittorrent, Memos and Gitea.", "excerpt": "Authelia, Immich, Jellyfin, Fusion, qBittorrent, Memos and Gitea. I think that's all of them.", "context": "self-hoster", "use_case": "git hosting", "switched_from": "", "story": "Ask HN: What self-hosted apps do you use daily?"}, {"id": 792049344, "item_id": 49503084, "url": "https://news.ycombinator.com/item?id=49503084", "by": "emrearmagan", "date": "2026-08-30", "stance": "neutral", "quote": "I only use them for a few private repos myself though", "excerpt": "Quite a few people asked for Gitea/Forgejo support, so I have been working on it the last few weeks. I only use them for a few private repos myself though, so I do love a few people who use it as their daily driver and have some feedback on what works and what doesn't", "context": "plugin author adding Gitea/Forgejo support", "use_case": "private repos", "switched_from": "", "story": "Gitea/Forgejo and Neovim"}, {"id": 791244304, "item_id": 49452769, "url": "https://news.ycombinator.com/item?id=49452769", "by": "pocksuppet", "date": "2026-08-26", "stance": "neutral", "quote": "I'm self-hosting Gitea and thinking of upgrading to Forgejo.", "excerpt": "We should worry less about what everyone else uses, and more about what we use. I'm self-hosting Gitea and thinking of upgrading to Forgejo. What are you using?", "context": "", "use_case": "self-hosted git", "switched_from": "", "story": "Disruption with Some GitHub Services \u2013 Resolved"}, {"id": 789723568, "item_id": 49357723, "url": "https://news.ycombinator.com/item?id=49357723", "by": "BatteryMountain", "date": "2026-08-18", "stance": "recommend", "quote": "I just self-host Gitea.", "excerpt": "I just self-host Gitea. I made own build server (with all the SDK's I need) that runs next to it and I use SeaweedFS for storage. Works amazingly well. So I have automated builds and artifact storage for my git repos's. It all lighting fast too.", "context": "", "use_case": "self-hosted git with builds", "switched_from": "", "story": "Cursor launches Origin, GitHub alternative"}, {"id": 789573377, "item_id": 49348336, "url": "https://news.ycombinator.com/item?id=49348336", "by": "zImPatrick", "date": "2026-08-18", "stance": "neutral", "quote": "", "excerpt": "My gitea instance was only ~6 DB migrations beyond where Forgejo was at when I decided to switch, so I just undo\u2018d those and upgraded anyways. Works just fine, but I was really lucky that they weren\u2018t any big migrations. I guess isn\u2018t really as feasible anymore.", "context": "", "use_case": "self-hosted git forge", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}, {"id": 789569648, "item_id": 49348103, "url": "https://news.ycombinator.com/item?id=49348103", "by": "geekraver", "date": "2026-08-18", "stance": "recommend", "quote": "I am self-hosting with Gitea. Have action runners set up on my Windows PC and Mac (with a container for Linux). Works great.", "excerpt": "I am self-hosting with Gitea. Have action runners set up on my Windows PC and Mac (with a container for Linux). Works great.", "context": "self-hosts", "use_case": "self-hosted git hosting and CI", "switched_from": "GitHub", "story": "Ask HN: Alternatives to GitHub"}, {"id": 789507728, "item_id": 49344233, "url": "https://news.ycombinator.com/item?id=49344233", "by": "Jnr", "date": "2026-08-18", "stance": "recommend", "quote": "Gitea is far ahead in CI/CD features", "excerpt": "I did and then rolled back. Gitea is far ahead in CI/CD features, which is the main thing I want from my own git forge. And they also seem to keep adding more meaningful features, not just refactoring to keep some federation thing working.", "context": "self-hosts a git forge", "use_case": "self-hosted git forge", "switched_from": "Forgejo", "story": "Ask HN: Alternatives to GitHub"}, {"id": 789491744, "item_id": 49343234, "url": "https://news.ycombinator.com/item?id=49343234", "by": "dalleh", "date": "2026-08-18", "stance": "recommend", "quote": "Gitea is powerful and lightweight", "excerpt": "Try self-hosting Gitea with push mirror to GitLab or GitHub. Gitea is powerful and lightweight, and a push-mirror to another service is a plus as a backup location.", "context": "", "use_case": "self-hosted git hosting", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}, {"id": 789489968, "item_id": 49343123, "url": "https://news.ycombinator.com/item?id=49343123", "by": "selfhoster1312", "date": "2026-08-18", "stance": "neutral", "quote": "the import feature works really well", "excerpt": "Had the same experience, but the import feature works really well (with `ALLOWED_DOMAINS = *` in app.ini). Bad news is i had to do this individually for each repo. Good news is it went great and fast, even for private repos.", "context": "", "use_case": "migrating repos from GitHub", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}, {"id": 789468304, "item_id": 49341769, "url": "https://news.ycombinator.com/item?id=49341769", "by": "globular-toast", "date": "2026-08-17", "stance": "neutral", "quote": "I accidentally upgraded my Gitea instance beyond the fork which makes this more difficult...", "excerpt": "I accidentally upgraded my Gitea instance beyond the fork which makes this more difficult...", "context": "runs a self-hosted Gitea instance", "use_case": "self-hosted git hosting", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}, {"id": 789465200, "item_id": 49341575, "url": "https://news.ycombinator.com/item?id=49341575", "by": "cik", "date": "2026-08-17", "stance": "recommend", "quote": "at a scale of 250 contributors (which we hit), Gitea solved all the problems", "excerpt": "I've had both self hosted GitHub (enterprise), and GitLab in the last year. It really deoends what you're trying to replace and how you structure the things you're hoping to replace. Also, the value of investing in your separation of concern or safety valve. To me, still, at a scale of 250 contributors (which we hit), Gitea solved all the problems. The fact that there's a command line tool (tea) that mostly works, me", "context": "ran self-hosted GitHub Enterprise and GitLab, 250 contributors", "use_case": "git hosting for 250 contributors", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}, {"id": 789453200, "item_id": 49340825, "url": "https://news.ycombinator.com/item?id=49340825", "by": "woodrowbarlow", "date": "2026-08-17", "stance": "recommend", "quote": "gitea/forgejo both do an 80% job of covering these needs", "excerpt": "gitea/forgejo both do an 80% job of covering these needs, ime. they have mostly-GH-compatible APIs.", "context": "", "use_case": "GitHub replacement", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}, {"id": 789443248, "item_id": 49340203, "url": "https://news.ycombinator.com/item?id=49340203", "by": "nurdism", "date": "2026-08-17", "stance": "recommend", "quote": "selfhosting gitea has been a great experience for me", "excerpt": "selfhosting gitea has been a great experience for me, its open source", "context": "self-hosts", "use_case": "self-hosted git forge", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}, {"id": 789432496, "item_id": 49339531, "url": "https://news.ycombinator.com/item?id=49339531", "by": "jrey2112", "date": "2026-08-17", "stance": "recommend", "quote": "I left for Gitea.", "excerpt": "Never forget the sudden GitLab price-hike and flavor feature changes just a few years ago. I was literally about to go from free to paid, when the pricing doubled nearly overnight. I left for Gitea. https://news.ycombinator.com/item?id=35144974", "context": "", "use_case": "git hosting", "switched_from": "GitLab", "story": "Ask HN: Alternatives to GitHub"}, {"id": 789422579, "item_id": 49338911, "url": "https://news.ycombinator.com/item?id=49338911", "by": "0xbadcafebee", "date": "2026-08-17", "stance": "warn", "quote": "I have a pretty bad taste in my mouth from GitHub, GitLab, Forgejo, Gitea, etc.", "excerpt": "I have a pretty bad taste in my mouth from GitHub, GitLab, Forgejo, Gitea, etc. They all attempt to hijack Git itself and become a monolith and single custom interface, rather than independent components that work around the Git repo. I want the Unix philosophy applied to Git and other functions. That way I'm not forced to switch the entire kitchen sink out when some single piece of functionality or hoster ends up br", "context": "", "use_case": "git hosting", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}, {"id": 789400576, "item_id": 49337536, "url": "https://news.ycombinator.com/item?id=49337536", "by": "amysox", "date": "2026-08-17", "stance": "recommend", "quote": "I've been self-hosting Gitea for years", "excerpt": "I've been self-hosting Gitea for years, and moved everything I had on GitHub off at the time of the Micro$oft takeover. With Amsterdam[0], I've put it back on GitHub, but only as a mirror to increase visibility of the code. My erbosoft.com Git server will always remain the \"source of truth\" for the project. [0] https://git.erbosoft.com/amy/amsterdam and https://github.com/amysoxcolo/amsterdam", "context": "", "use_case": "self-hosted git server", "switched_from": "GitHub", "story": "Ask HN: Alternatives to GitHub"}, {"id": 789375009, "item_id": 49335938, "url": "https://news.ycombinator.com/item?id=49335938", "by": "Magicrafter13", "date": "2026-08-17", "stance": "recommend", "quote": "you should consider self hosted gitea, which uses the same Actions syntax", "excerpt": "My setup is a self hosted GitLab. From there, in most of my repos I setup repo mirroring (basically it just does its own SSH-based git push whenever I push commits to it) to GitHub, GitLab, and Codeberg. All of these are free (if you ignore electricity cost of hosting your own git server), and each one is a backup of sorts. I don't necessarily recommend starting with GitLab though unless you want advanced CI capabili", "context": "", "use_case": "GitHub-like self-hosted forge", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}, {"id": 789371056, "item_id": 49335691, "url": "https://news.ycombinator.com/item?id=49335691", "by": "scientifik", "date": "2026-08-17", "stance": "warn", "quote": "the support mechanism was \"Beg for help on Discord and hope someone replies\", this left us high and dry a few times", "excerpt": "I tried Gitea for a while but the support mechanism was \"Beg for help on Discord and hope someone replies\", this left us high and dry a few times.", "context": "", "use_case": "git hosting", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}, {"id": 789366081, "item_id": 49335380, "url": "https://news.ycombinator.com/item?id=49335380", "by": "samlinnfer", "date": "2026-08-17", "stance": "neutral", "quote": "we switched to gitea", "excerpt": "Cool thing about gitolite is that you manage it using text files and committing to the gitolite admin git repository. We were using it until we grew tired of not having a web view to comment and review patches so we switched to gitea.", "context": "", "use_case": "web view for patch review", "switched_from": "Gitolite", "story": "Ask HN: Alternatives to GitHub"}, {"id": 789361632, "item_id": 49335102, "url": "https://news.ycombinator.com/item?id=49335102", "by": "KronisLV", "date": "2026-08-17", "stance": "recommend", "quote": "eventually ended up moving over to Gitea + WoodpeckerCI + Nexus", "excerpt": "I also self-hosted GitLab for some years, eventually ended up moving over to Gitea + WoodpeckerCI + Nexus (with Nexus for a while). Well there was DroneCI in the middle for a bit there as well, but Woodpecker is perfectly okay and more free in regards to what you can do. Only thing is that not that much other software out there supports Gitea, for example Kepler only knows about GitHub, GitLab, Jira, Trello and Linea", "context": "", "use_case": "git hosting", "switched_from": "GitLab", "story": "Ask HN: Alternatives to GitHub"}, {"id": 789360976, "item_id": 49335061, "url": "https://news.ycombinator.com/item?id=49335061", "by": "lnenad", "date": "2026-08-17", "stance": "recommend", "quote": "You've built a great piece of software, thank you!", "excerpt": "You've built a great piece of software, thank you!", "context": "", "use_case": "git hosting", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}, {"id": 789358464, "item_id": 49334904, "url": "https://news.ycombinator.com/item?id=49334904", "by": "kamikazechaser", "date": "2026-08-17", "stance": "recommend", "quote": "All upgrades, including major changes, have been as easy as just changing the tag and reloading the container.", "excerpt": "I have been hosting gitea for our small org (docker + sqlite) for close to 5 years now. ~50+ repos, some large. All upgrades, including major changes, have been as easy as just changing the tag and reloading the container.", "context": "hosts for a small org, 50+ repos", "use_case": "small org git hosting", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}, {"id": 789348000, "item_id": 49334250, "url": "https://news.ycombinator.com/item?id=49334250", "by": "rhdunn", "date": "2026-08-17", "stance": "warn", "quote": "Two of the big issues I had were around the user/repository forced structure.", "excerpt": "Two of the big issues I had were around the user/repository forced structure. That works to some extent when you have multiple users with a small number of repositories. But for my personal projects I wanted more control over the structure and grouping. I worked around it to some extent by having an organisation per category, but that doesn't work at scale. For example, you can't group Text-to-Speech projects around ", "context": "", "use_case": "personal project hosting", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}, {"id": 789344176, "item_id": 49334011, "url": "https://news.ycombinator.com/item?id=49334011", "by": "woodrowbarlow", "date": "2026-08-17", "stance": "recommend", "quote": "thank you for your work on an excellent product!", "excerpt": "oh hello, thank you for your work on an excellent product! one small difference i ran into last weekend is that foregjo forwards the FORGEJO_TOKEN in the environment to composite actions so that they don't need to have a required \"token\" input.", "context": "", "use_case": "git hosting", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}, {"id": 789343937, "item_id": 49333996, "url": "https://news.ycombinator.com/item?id=49333996", "by": "rhdunn", "date": "2026-08-17", "stance": "recommend", "quote": "Forejo and Gitea are good for this.", "excerpt": "It depends on what you are after? 1. Do you want something that works and feels like GitHub? -- Forejo and Gitea are good for this. 2. Do you want a place to host git repositories with minimal hassle? -- GitLab, CodeBerg, and others are available. 3. Do you have your own hosting infrastructure? You could use gitolite and CGit/GitWeb on that hosting platform or local hardware. 4. Do you just want to host repositories?", "context": "", "use_case": "GitHub-like forge", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}, {"id": 789339265, "item_id": 49333704, "url": "https://news.ycombinator.com/item?id=49333704", "by": "r0b05", "date": "2026-08-17", "stance": "recommend", "quote": "Forgejo/Gitea is lightweight and easy to setup.", "excerpt": "Forgejo/Gitea is lightweight and easy to setup.", "context": "", "use_case": "git hosting", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}, {"id": 789338064, "item_id": 49333629, "url": "https://news.ycombinator.com/item?id=49333629", "by": "AndrewKemendo", "date": "2026-08-17", "stance": "recommend", "quote": "It\u2019s my go to now for all my private projects", "excerpt": "Awesome It\u2019s my go to now for all my private projects", "context": "", "use_case": "private projects hosting", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}, {"id": 789335440, "item_id": 49333465, "url": "https://news.ycombinator.com/item?id=49333465", "by": "henryfjordan", "date": "2026-08-17", "stance": "neutral", "quote": "looks like Gitea supports that kind of workflow now", "excerpt": "Not who you asked, but I was going to say Actions or CI/CD from when I tried out Gitea a few years ago (back when running a Jenkins instance was more normal) but looks like Gitea supports that kind of workflow now: https://about.gitea.com/products/runner/", "context": "", "use_case": "CI/CD runner", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}, {"id": 789326626, "item_id": 49332914, "url": "https://news.ycombinator.com/item?id=49332914", "by": "stephenway", "date": "2026-08-17", "stance": "recommend", "quote": "I like Forgejo/Gitea", "excerpt": "This is pretty much why I started Fjord. I like Forgejo/Gitea, but didn't think \u201crun your own forge forever\u201d should be the only alternative to GitHub. We run dedicated Forgejo instances for people who want that middle ground.", "context": "", "use_case": "code forge", "switched_from": "", "story": "Tell HN: GitHub Is Experiencing Degraded Performance"}, {"id": 789321424, "item_id": 49332589, "url": "https://news.ycombinator.com/item?id=49332589", "by": "herpdyderp", "date": "2026-08-17", "stance": "neutral", "quote": "I'm working on self hosting Gitea right now.", "excerpt": "I'm working on self hosting Gitea right now. Hopefully it goes well!", "context": "", "use_case": "self-hosting git", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}, {"id": 789319009, "item_id": 49332438, "url": "https://news.ycombinator.com/item?id=49332438", "by": "td-andrew", "date": "2026-08-17", "stance": "neutral", "quote": "Technically old version of gitea which is forgejo pre-fork", "excerpt": "Hooks directly into drone.io using SSO. Self host both of them on my internal network. Technically old version of gitea which is forgejo pre-fork", "context": "self-hosts on internal network", "use_case": "self-hosted git", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}, {"id": 789317888, "item_id": 49332368, "url": "https://news.ycombinator.com/item?id=49332368", "by": "dboreham", "date": "2026-08-17", "stance": "neutral", "quote": "Our practical solution was to just mirror our Gitea repos into GitHub.", "excerpt": "There was some work to address this issue with federation in Gitea, but I haven't kept up with how well that went. Our practical solution was to just mirror our Gitea repos into GitHub. That way they're discoverable, releases can be downloaded, and so on. Not a perfect solution because users get confused as to why they can't open issues, etc.", "context": "", "use_case": "self-hosted git with GitHub mirror", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}, {"id": 789311504, "item_id": 49331969, "url": "https://news.ycombinator.com/item?id=49331969", "by": "ukd1", "date": "2026-08-17", "stance": "recommend", "quote": "gitea is faster, and easier to manage and does everything I actually need", "excerpt": "I've used gitlab and gitea; gitea is faster, and easier to manage and does everything I actually need though, is less feature complete.", "context": "", "use_case": "git hosting", "switched_from": "", "story": "Ask HN: Alternatives to GitHub"}, {"id": 785686674, "item_id": 49105417, "url": "https://news.ycombinator.com/item?id=49105417", "by": "weitendorf", "date": "2026-07-29", "stance": "warn", "quote": "I also evaluated gitea and saw they were offering a commercial multitenant service where my 3p hosting wouldn't be welcome", "excerpt": "There are two that I know of, and neither seem to do a better job at solving my problem of providing a place to host and distribute open source software. I hosted my own forgejo server used by actual other people * very slightly* before it was cool, and just to get started I had to go through this giant list of configs governing important auth/cred stuff and also random ass features and everything else, then I set up", "context": "", "use_case": "", "switched_from": "", "story": "GitHub is the wrong shape for this new world"}, {"id": 784433040, "item_id": 49027065, "url": "https://news.ycombinator.com/item?id=49027065", "by": "charlie-83", "date": "2026-07-23", "stance": "warn", "quote": "Ability for rug pull is much greater for gitea imo.", "excerpt": "(Disclaimer: I use Gitea daily for work and Codeberg daily for personal stuff. I prefer Codeberg) Gitea is developed by a for-profit organisation while Forgejo is developed by a non-profit. Ability for rug pull is much greater for gitea imo. Gitea (organisation) already develops non-foss software to sit on top of Gitea (software). Gitea requires copyright attributions for contributions so is more able to change the G", "context": "uses Gitea daily for work", "use_case": "git hosting", "switched_from": "", "story": "I Regret Migrating to Codeberg"}, {"id": 781490768, "item_id": 48843173, "url": "https://news.ycombinator.com/item?id=48843173", "by": "hambos22", "date": "2026-07-09", "stance": "recommend", "quote": "I'm extremely satisfied with that setup. It is batteries included & fire and forget.", "excerpt": "It's been 9 months since I ditched Github. Currently I self-host Gitea [0], use its registry for Docker, NPM etc and act runners [1] for github actions alternative, everything secured under tailnet. I'm extremely satisfied with that setup. It is batteries included & fire and forget. Now I use Github only as backup by mirroring my self hosted repos. [0] https://gitea.com [1] https://docs.gitea.com/usage/actions/act-ru", "context": "self-hoster", "use_case": "self-hosted git, registry, CI", "switched_from": "GitHub", "story": "Why developers are ditching GitHub for Codeberg and self-hosting alternatives"}, {"id": 767142528, "item_id": 47946408, "url": "https://news.ycombinator.com/item?id=47946408", "by": "mawadev", "date": "2026-04-29", "stance": "recommend", "quote": "I use a self hosted Gitea instance and it's very simple.", "excerpt": "I use a self hosted Gitea instance and it's very simple. I was also surprised when Zig moved to Codeberg and had a big blog post about it, but now over time I start to see the reasons materialize in reality.", "context": "", "use_case": "self-hosted git", "switched_from": "", "story": "Before GitHub"}, {"id": 742415441, "item_id": 46400965, "url": "https://news.ycombinator.com/item?id=46400965", "by": "weitendorf", "date": "2025-12-27", "stance": "warn", "quote": "it was not clear to us to what extent gitea would play nicely with us", "excerpt": "Only a very, very small fraction of open source projects get to the point where they legitimately need committees and working groups and maintainer politics/drama. > quite a few people would consider \"benevolent dictator for life\" an outdated model for open source communities. I think what most people dislike are rugpulls and when commercial interests override what contributors/users/maintainers are trying to get out", "context": "", "use_case": "self-hosted git forge", "switched_from": "", "story": "How uv got so fast"}]}