Gitea is a self-hosted software development service that bundles Git hosting with the tools teams typically need around it. It's for developers and organizations who want a GitHub-like workflow (code review, issues, project boards, wiki, CI/CD) running on infrastructure they control, without depending on a third-party SaaS.
tea, and an action runner for Gitea Actions are maintained alongside the server.Gitea fits teams and individuals who want a self-hosted alternative to GitHub or GitLab, particularly where resource usage matters: it's built to be lighter weight than some alternatives while still covering issues, PRs, CI/CD, and a package registry. Its cross-platform, cross-architecture Go binary also makes it a reasonable fit for running on modest hardware, including ARM-based servers.
It's not the right tool if you specifically need GitLab's or GitHub's exact enterprise feature set (advanced compliance tooling or specific marketplace integrations only those platforms offer), since Gitea's feature set, while broad, isn't a 1:1 match. If you'd rather not run and maintain your own instance at all, gitea.com's hosted service or Gitea Cloud's managed trial are the lower-maintenance paths.
Gitea can be deployed as a container using the official image:
docker pull gitea/gitea
(see the project's documentation site for the full container run/compose configuration, environment variables, and volume setup)
To build from source, check docs/build-setup.md for prerequisites and docs/build-source.md for packaging instructions. A typical local development setup is described in docs/development.md, covering linting and testing.
After building, start the server or list available commands:
./gitea web
./gitea help
For day-to-day configuration, dynamic options can be changed from the admin panel, while static configuration lives in app.ini, which requires a server restart to take effect; an example file (app.example.ini) is included in the repository. Full documentation, including installation guides for various platforms, lives on the official documentation site.
If you want to try Gitea before installing anything, an online demo is available at demo.gitea.com. Contributions follow a standard fork, patch, push, pull request workflow, and the project asks that new contributors read the contributing guide first; the development guide covers setting up a local environment, linting, and testing for anyone working on the codebase itself. Localization work happens through Crowdin, and new contributors interested in translation can ask project managers there, or raise it on Discord in the #translation channel, to get a new language added.
Security patches are called out explicitly in the release log and changelog, marked with the keyword SECURITY, so administrators who need to track security-relevant updates for their instance have a straightforward way to find them without reading every changelog entry in full. The project also maintains lists of maintainers, contributors, and translators, and accepts financial support through Open Collective from backers and sponsors who want to fund ongoing development.