什么是 Gitea?
Gitea 是一个轻松、自托管、一体化的软件开发服务。它包括 Git 托管、代码审查、团队协作、软件包仓库和 CI/CD。它类似于 GitHub、Bitbucket 和 GitLab。
Gitea 最初是基于 Gogs 的分支,并且几乎所有的代码都被修改了。请查看 Gitea 公告 博客文章,了解分叉的理由。
Gitea 不会发送或 cherry-pick 上游的提交,因此如果您从 Gogs 升级到 Gitea,无法保证它能够正常工作。建议的方法是从 Gogs 迁移仓库到 Gitea。
目的
该项目的目的是提供最简单、最快捷、最轻松的搭建自托管 Git 服务的方式。
使用 Go,可以在 Go 支持的 所有平台 上独立实现,包括 Linux、macOS 和 Windows,在 x86、amd64、ARM 和 PowerPC 架构上。您可以使用 在线演示 试用。
功能
-
代码托管
Gitea 支持创建和管理仓库、浏览提交历史和代码文件、审查和合并代码提交、管理合作者、处理分支等等。它还支持许多常见的 Git 功能,例如标签、Cherry-pick、钩子、集成协作工具等等。
-
轻量级和快速
Gitea 的设计目标之一是轻量级和快速响应。与一些大型代码托管平台不同,它保持精简,在速度方面表现出色,并且适用于资源有限的服务器环境。由于其轻量级设计,Gitea 的资源消耗相对较低,并且在资源受限的环境中表现良好。
-
轻松部署和维护
它可以轻松部署在各种服务器上,无需复杂的配置或依赖关系。这使得个人开发者或小型团队可以轻松设置和管理自己的 Git 服务。
-
安全性
Gitea 非常注重安全性,提供用户权限管理、访问控制列表等等功能,确保代码和数据的安全性。
-
代码审查
代码审查支持 Pull Request 工作流程和 AGit 工作流程。审阅者可以在线浏览代码并提供审查意见或反馈。提交者可以接收审查意见并在线回复或修改代码。代码审查可以帮助个人和组织提高代码质量。
-
CI/CD
Gitea Actions 支持 CI/CD 功能,与 GitHub Actions 兼容。用户可以使用熟悉的 YAML 格式编写工作流程,并重用各种现有的 Actions 插件。Actions 插件支持从任何 Git 网站下载。
-
项目管理
Gitea 通过列和问题来跟踪项目需求、功能和 bug。问题支持分支、标签、里程碑、分配、时间跟踪、截止日期、依赖关系等等功能。
-
制品仓库
Gitea 支持超过 20 种不同类型的公共或私有软件包管理,包括 Cargo、Chef、Composer、Conan、Conda、Container、Helm、Maven、npm、NuGet、Pub、PyPI、RubyGems、Vagrant 等等。
-
开源社区支持
Gitea 是一个基于 MIT 许可证的开源项目。它拥有一个活跃的开源社区,不断开发和改进该平台。该项目还积极欢迎社区贡献,确保更新和创新。
-
多语言支持
Gitea 提供多种语言的界面,面向全球用户,并促进国际化和本地化。
有关更多详细信息,请参考: https://docs.gitea.ac.cn/installation/comparison#general-features
系统要求
- 树莓派 3 足够强大,可以为小型工作负载运行 Gitea。
- 2 个 CPU 内核和 1GB 内存通常足以满足小型团队/项目的需求。
- 在 UNIX 类系统上,Gitea 应使用专用的非 root 系统帐户运行。
- 注意:Gitea 管理
~/.ssh/authorized_keys
文件。以普通用户身份运行 Gitea 可能会破坏该用户登录的能力。
- 注意:Gitea 管理
- Git 版本 2.0.0 或更高版本是必需的。
- Git 大文件存储 在启用且 Git 版本 >= 2.1.2 时可用。
- 如果您的 Git 版本 >= 2.18,Git 提交图渲染将自动启用。
浏览器支持
- Chrome、Firefox、Safari 和 Edge 的最新 2 个版本
- Firefox ESR
组件
- Web 服务器框架: Chi
- ORM: XORM
- UI 框架
- jQuery
- Fomantic UI
- Vue3
- 以及各种组件(请参阅 package.json)
- 编辑器
- 数据库驱动程序
集成支持
请访问 Awesome Gitea 获取更多第三方集成支持