00c22a25e5
(cherry picked from commit 6d910daafb28b79402b8190fa749f4ff18991505) (cherry picked from commit d447861cc911aa89539cbbcdbbf0e68d0bc23e53) (cherry picked from commit dc6e9d87990f72d870100934be32a5fc1dc119ad) (cherry picked from commit ef232fa20c99c6c52599025967a5af2f5839bdce) (cherry picked from commit 290c55517a84f6e8b80459372b9b63ec19cadcb4) (cherry picked from commit db48af1784e94851c066845324c3e680e79ab7c3) (cherry picked from commit 85f33237a2f5da88ec2fcab76ea91ee3cec56065) (cherry picked from commit 76899ee33e8196c66f882fca5facf5268c8fabf8) (cherry picked from commit 148b3ee9cb03aa614b59ab98d2d8c11f343d38d1) (cherry picked from commit 1f6ad8f465819cc6adb8061845822398a33e14e1) (cherry picked from commit c330afdba3354ff59591bd07046b6993bfeea777) (cherry picked from commit b1f87075a79c8e0d1a8626958f90bfee4d003de1) (cherry picked from commit 7da40992cc82d719094a748339c385fbc1251afe) (cherry picked from commit 7ab19ff5e528b9e1ef53e95639022facca70466e) (cherry picked from commit e61e44921bbabc7ba12da51afde1c6fe8203679b) (cherry picked from commit 83646119fb8af975a114601ee7bbaf7c5d25f93f) (cherry picked from commit 20cf748e61f35378745629dcb38b459818c8ad52) (cherry picked from commit 0a99919cec90dc1374c67199a0bbb90e7f8c7525) (cherry picked from commit 21215222a6d036551dca0b54a09c388845c3565f) (cherry picked from commit 0f6c5658d77fe47d4c67b327190f88af829905da) (cherry picked from commit 1752e43d3c0d71533680d2dcbcbb056d0c91371e) (cherry picked from commit 2332080929c9eb65d512956773bf7ac821fa6736) (cherry picked from commit 590aabf2a2a47f4a5a53a9d0b8b12486f5998400) (cherry picked from commit 87d8b7b315c3e25bd3fcf9dc9c1d359bcd107281) (cherry picked from commit ff37de38be04b8c1ca6f04b4ef5566c9f9a125ad) (cherry picked from commit cee32c9e7ab58af6cb07109df4b88420c30c6156) (cherry picked from commit 39faade524215d5527c5d24e90a9be62aa40f422) (cherry picked from commit 0e5ca477b6e7ae926cd32454a6ed372b83626b34) (cherry picked from commit 70e2730f7b2efe4c2ee9ef047583bf9ee5eed409) (cherry picked from commit 2ad4003944e0d32d1e45b9276316e189f9b5b176) (cherry picked from commit 2429de9e87e3fdbfa2df8741c9400e9f056ef124) (cherry picked from commit c133915fc1a4eb8aa1e4766e720e47de14db0d61) (cherry picked from commit c607dcaf9f01e454921e07b758bdde1c4dba5504) (cherry picked from commit 00f006637f659bd617d05d1017be7bd4b78e618b) (cherry picked from commit 0de6646475195e0cf210781c98b8fcede010b94d) (cherry picked from commit b05e83bb1e45e67d96f0b4b138ffe2df8329e01d) (cherry picked from commit cb71f139f081c14d17ee904931ab64ccd2199c20) (cherry picked from commit 2a8b08ee4fdbceb5b8196a89c017405546ec0f79) (cherry picked from commit 3ebab73c4eee7b43ab0a30ad1f32c23ac969cbac) (cherry picked from commit 07626c088c2e9927bf200803178530be515831e8) (cherry picked from commit 844e9bc9999f2b94e2fc0f727dec06d128042b8e) (cherry picked from commit c315e247514fee9b2fcd3a91e16237b8986b78f0) (cherry picked from commit f5f2b41f3cdfc6258191859a7c1914b52b868c09) (cherry picked from commit 09134424a8c3c5136373c7760cf3d3dd26382610) (cherry picked from commit 6fc63d48c4b2a568ddafb92d566e607977cc1b1b) (cherry picked from commit a0be5c783e145601ca80eadfff7e104c980d1f32) (cherry picked from commit 124bad8230535626187165341c369668bb71c4f2) (cherry picked from commit 57069811d1d4d89bee498d8cbd9e23e212e48b7b) (cherry picked from commit 8871d1aac7fa64a97fbc740f548151e239257de5) |
||
---|---|---|
.devcontainer | ||
assets | ||
build | ||
cmd | ||
contrib | ||
custom/conf | ||
docker | ||
docs | ||
models | ||
modules | ||
options | ||
public | ||
routers | ||
services | ||
snap | ||
templates | ||
tests | ||
web_src | ||
.air.toml | ||
.changelog.yml | ||
.dockerignore | ||
.editorconfig | ||
.eslintrc.yaml | ||
.gitattributes | ||
.gitignore | ||
.gitpod.yml | ||
.golangci.yml | ||
.ignore | ||
.markdownlint.yaml | ||
.npmrc | ||
.spectral.yaml | ||
.stylelintrc.yaml | ||
.yamllint.yaml | ||
BSDmakefile | ||
build.go | ||
CHANGELOG.md | ||
CODE_OF_CONDUCT.md | ||
CONTRIBUTING.md | ||
DCO | ||
Dockerfile | ||
Dockerfile.rootless | ||
go.mod | ||
go.sum | ||
LICENSE | ||
main.go | ||
MAINTAINERS | ||
Makefile | ||
package-lock.json | ||
package.json | ||
playwright.config.js | ||
poetry.lock | ||
poetry.toml | ||
pyproject.toml | ||
README.md | ||
README_ZH.md | ||
SECURITY.md | ||
vitest.config.js | ||
webpack.config.js |
Gitea - Git with a cup of tea
Purpose
The goal of this project is to make the easiest, fastest, and most painless way of setting up a self-hosted Git service.
As Gitea is written in Go, it works across all the platforms and architectures that are supported by Go, including Linux, macOS, and Windows on x86, amd64, ARM and PowerPC architectures. This project has been forked from Gogs since November of 2016, but a lot has changed.
For online demonstrations, you can visit try.gitea.io.
For accessing free Gitea service (with a limited number of repositories), you can visit gitea.com.
To quickly deploy your own dedicated Gitea instance on Gitea Cloud, you can start a free trial at cloud.gitea.com.
Building
From the root of the source tree, run:
TAGS="bindata" make build
or if SQLite support is required:
TAGS="bindata sqlite sqlite_unlock_notify" make build
The build
target is split into two sub-targets:
make backend
which requires Go Stable, the required version is defined in go.mod.make frontend
which requires Node.js LTS or greater.
Internet connectivity is required to download the go and npm modules. When building from the official source tarballs which include pre-built frontend files, the frontend
target will not be triggered, making it possible to build without Node.js.
Parallelism (make -j <num>
) is not supported.
More info: https://docs.gitea.com/installation/install-from-source
Using
./gitea web
NOTE: If you're interested in using our APIs, we have experimental support with documentation.
Contributing
Expected workflow is: Fork -> Patch -> Push -> Pull Request
NOTES:
- YOU MUST READ THE CONTRIBUTORS GUIDE BEFORE STARTING TO WORK ON A PULL REQUEST.
- If you have found a vulnerability in the project, please write privately to security@gitea.io. Thanks!
Translating
Translations are done through Crowdin. If you want to translate to a new language ask one of the managers in the Crowdin project to add a new language there.
You can also just create an issue for adding a language or ask on discord on the #translation channel. If you need context or find some translation issues, you can leave a comment on the string or ask on Discord. For general translation questions there is a section in the docs. Currently a bit empty but we hope to fill it as questions pop up.
https://docs.gitea.com/contributing/localization
Further information
For more information and instructions about how to install Gitea, please look at our documentation. If you have questions that are not covered by the documentation, you can get in contact with us on our Discord server or create a post in the discourse forum.
We maintain a list of Gitea-related projects at gitea/awesome-gitea.
The official Gitea CLI is developed at gitea/tea.
Authors
Backers
Thank you to all our backers! 🙏 [Become a backer]
Sponsors
Support this project by becoming a sponsor. Your logo will show up here with a link to your website. [Become a sponsor]
FAQ
How do you pronounce Gitea?
Gitea is pronounced /ɡɪ’ti:/ as in "gi-tea" with a hard g.
Why is this not hosted on a Gitea instance?
We're working on it.
License
This project is licensed under the MIT License. See the LICENSE file for the full license text.
Screenshots
Looking for an overview of the interface? Check it out!