Github 神器!一款极易搭建的自助 Git 服务

JavaGuide

共 2214字,需浏览 5分钟

 ·

2021-11-15 05:49

下午好,我是Guide!

有时候我们需要在内网环境创建一个 Git 服务,方便保存代码和部署应用。一开始想到的也许是 gitlab,确实功能强大,但是有很多功能又用不到,白白浪费资源。后来找到一个更轻量级易部署的开源项目 gitea,不仅功能适用还支持跨平台。

gitea 的社区非常活跃,目前 GitHub 上已经 26.6K+的 star,热度持续上涨中。

  • GitHub 地址:https://github.com/go-gitea/gitea
  • 官方文档:https://docs.gitea.io

简介

Gitea 是一个自己托管的 Git 服务程序。他和 GitHub, Bitbucket or Gitlab 等比较类似。他是从 Gogs 发展而来,已经 Fork 并且命名为 Gitea。Gitea 的首要目标是创建一个极易安装,运行非常快速,安装和使用体验良好的自建 Git 服务。采用 Go 作为后端语言,这使得只要生成一个可执行程序即可。并且它还支持跨平台,支持 Linux, macOS 和 Windows 以及各种架构,除了 x86,amd64,还包括 ARM 和 PowerPC。

功能特性

  • 支持活动时间线
  • 支持 SSH 以及 HTTP/HTTPS 协议
  • 支持 SMTP、LDAP 和反向代理的用户认证
  • 支持反向代理子路径
  • 支持用户、组织和仓库管理系统
  • 支持添加和删除仓库协作者
  • 支持仓库和组织级别 Web 钩子(包括 Slack 集成)
  • 支持仓库 Git 钩子和部署密钥
  • 支持仓库工单(Issue)、合并请求(Pull Request)以及 Wiki
  • 支持迁移和镜像仓库以及它的 Wiki
  • 支持在线编辑仓库文件和 Wiki
  • 支持自定义源的 Gravatar 和 Federated Avatar
  • 支持邮件服务
  • 支持后台管理面板
  • 支持 MySQL、PostgreSQL、SQLite3, MSSQL 和 TiDB(实验性支持) 数据库
  • 支持多语言本地化(21 种语言)

快速体验

快速安装

Linux

目前还没有对应的 Linux 安装包发布,当前可以查看从二进制安装。

所有下载均包括 SQLite, MySQL 和 PostgreSQL 的支持,同时所有资源均已嵌入到可执行程序中,这一点和老版本有所不同。基于二进制的安装非常简单,只要从下载页面(地址:https://dl.gitea.io/gitea)选择对应平台,拷贝下载URL,执行以下命令即可(以Linux为例):

wget -O gitea https://dl.gitea.io/gitea/1.15.4/gitea-1.15.4-linux-amd64
chmod +x gitea

在执行了以上步骤之后,你将会获得 gitea 的二进制文件,在你复制到部署的机器之前可以先测试一下。在命令行执行完后,你可以 Ctrl + C 关掉程序。

./gitea web

Windows

下载相应的 exe 文件安装包,采用安装包的方式进行安装,可以在如下地址找到安装包:

https://dl.gitea.io/gitea

macOS

macOS 平台下当前我们仅支持通过 brew 来安装。你可以执行以下命令:

brew tap go-gitea/gitea
brew install gitea

配置数据库

gitea 首次启动时需要配置数据库,它支持 MySQL、PostgreSQL、MSSQL 或 SQLite3 等多种数据库。启动后访问http://127.0.0.1:3000即可看到如下配置页面。

注册登录

配置完成后,进入到首页,点击右上角进行注册登录。

创建项目

根据对应输入框创建完账户后进入到后台页面,首先需要创建一个仓库。

项目操作

创建完成后的界面我们应该很熟悉了,这里需要配置 ssh 进行拉取和提交。

还可以进行 PR 请求,查看版本发布以及动态等。

正如 Gitea 的标语一样,只需一杯茶的功夫就可以搭建 Git 服务,如此简易实用,还等什么,赶紧用起来吧!

··············  END  ··············

也许你还想看
  | 我在 B 站淘了 2 个 Java 实战项目! 小破站,YYDS!
  | 我常用的20+个学习编程的网站!芜湖起飞!
  | 1w+字的 Dubbo 面试题/知识点总结!(2021 最新版)
  | 7年前,24岁,出版了一本 Redis 神书
  | 京东二面:为什么需要分布式ID?你项目中是怎么做的?
  | 再见 Spring Task,这个定时任务框架真香!
  | 一键生成数据库文档,堪称数据库界的Swagger
  | 来看看这个超好用的项目脚手架吧!5分钟搭建一个Spring Boot 前后端分离系统!
  | 阿里开源的15个顶级Java项目!!!

我是 Guide哥,一个工作2年有余,接触编程已经6年有余的程序员。大三开源 JavaGuide,目前已经 100k+ Star。未来几年,希望持续完善 JavaGuide,争取能够帮助更多学习 Java 的小伙伴!共勉!凎!点击即可了解我的个人经历



浏览 69
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报