十分钟,带你搭建一个自己的Git系统

Gitea 是一个轻量级的开源代码托管平台,基于 Go 语言开发,支持 Git 版本控制。它类似于 GitHub 或 GitLab,但更注重轻量化、低资源占用和快速部署,适合个人开发者、小团队或企业内部使用。

Gitea 的名称来源于 Gittea (茶)的结合。Git 直接表明它是一个基于 Git 版本控制系统 的代码托管平台,功能定位清晰。 Tea 则象征轻量、简洁和友好,暗喻其低资源占用易用性,如同茶一样"小而美"。

Gitea历史背景

Gitea 最初是从另一个开源项目 Gogs(Go Git Service)分叉而来。Gogs 因开发进度缓慢,社区成员于 2016 年创建了 Gitea,目标是更开放、更活跃的协作。

新名称 Gitea 既保留了与 Git 的关联,又通过 "tea" 传递了社区驱动的友好形象,与 Gogs 形成区分。

Gitea功能与优势

Gitea的主要功能有如下几点:

代码托管。支持 Git 仓库管理,提供仓库克隆、推送、分支管理等功能。

协作开发。支持 Issue 跟踪、Pull Request(PR)、代码审查等协作工具。

权限管理。可配置团队和用户权限,保障代码安全。

集成能力。支持 Webhook、CI/CD 集成(需配合其他工具)等。

核心优势主要有:

轻量高效。资源占用低,适合低配置服务器。

跨平台。支持 Linux、Windows、macOS 等多种系统。

开源免费。代码完全开源,可自由修改和扩展。

社区驱动。由活跃的开源社区维护,更新频繁。

一键部署。通过二进制文件或 Docker 快速部署。

Linux环境下部署Gitea

部署环境

操作系统:Ubuntu 20.04

CPU、内存:2核、2G

依赖其他工具:Docker、Git、MySQL/PostgreSQL/SQLite

:推荐 SQLite 简化部署,但是本教程使用MySQL部署,另外本教程默认Docker正常和MySQL默认能够进行远程连接,具体按照文档可参看https://docs.gitea.com/zh-cn/category/installation

步骤 1:使用Docker安装并启动Gitea

Docker安装命令:

shell 复制代码
docker pull gitea/gitea

Docker启动Gitea:

shell 复制代码
docker run -p 3000:3000 -d gitea/gitea

步骤 2:准备Gitea需要的环境

Gitea的环境准备主要有两个部分:MySQL建库和创建主安装目录。

1)进入MySQL,创建数据库

sql 复制代码
create database gitea

2)进入到运行Gitea的Docker镜像内,创建目录并赋予权限

shell 复制代码
docker exec -it [容器ID] /bin/bash

cd /opt 

mkdir gitea

chmod 777 gitea

步骤 3:进入并配置Gitea

1)访问 http://<服务器IP>:3000,进入安装页面

2)填写配置

数据库类型 :SQLite3(默认路径 /var/lib/gitea/data/gitea.db

应用 URL :填写最终访问地址(如 https://gitea.example.com

管理员账号:设置管理员账户信息。

3)点击 立即安装 完成初始化

总结一下:就是除了数据库配置和域名配置,其他基本上使用默认值就可以了。

步骤 4:开始使用

访问自己的部署地址,登录管理员账户,创建仓库并测试推送代码。

常见问题

确保 /var/lib/gitea 目录归属 gitea 用户,或者提前创建好相关目录,其次是端口冲突 ,若 3000 端口被占用,修改 app.ini 中的 HTTP_PORT

通过以上步骤,您可以在 Linux 系统上快速部署一个高性能的 Gitea 代码托管平台。

相关推荐
陈随易5 小时前
FFmpeg 9.0 发布,代号 Lei,音视频处理再升级
前端·后端·程序员
凌虚8 小时前
面向 MySQL 用户的 PostgreSQL 快速上手指南
数据库·后端·架构
IT_陈寒9 小时前
Vite静态资源引用这个坑我踩得有点疼
前端·人工智能·后端
前端开发张小七9 小时前
Java 学习笔记 · 第一课:基础语法与核心概念
java·后端
海盗12349 小时前
微软技术周报 ——2026-08-03
后端·python·microsoft·c#·.netcore
沙湖遇雨9 小时前
6. Pipeline 的生命周期
后端
青青子衿悠悠我心10 小时前
TRAE Work让财务月底对账3小时变5分钟
后端
创安电气研究所10 小时前
用TypeScript给Modbus设备做一层适配器
后端
妙码生花10 小时前
从 PHP 到 AI + Golang,程序员自救转型手记(五十):增加管理员角色组管理
前端·后端·ai编程
妙码生花10 小时前
从 PHP 到 AI + Golang,程序员自救转型手记(五十一):管理员和角色组的关联
前端·后端·ai编程