On this page... (hide)

  1.   1.  安装与基本配置
  2.   2.  迁移仓库时使用指定代理

有些个人用的代码片段,不一定愿意放在 GitHub 等公开服务上,这时架设一个自有的 Git 存储服务也是蛮好的,其中最简单易用的就是 Gitea

1.  安装与基本配置

Gitea 的安装很简单,从官网下载二进制的可执行包,然后执行 gitea web 这个指令就行了。(需要本地先有 git ,没有的话可以装 Linux 发行版提供的 git 软件包。)

如果希望让 Gitea 作为服务运行,可以把它放在 Supervisor 里管理,例如 Supervisor 的配置文件可以这么写(配置文件需要在环境变量里指明执行 Gitea 的用户和 home 目录):

[program:gitea]
command=/opt/gitea/gitea web
autorestart=true
user=appuser
environment = HOME="/home/appuser", USER="appuser"

Gitea 的初始配置过程,会需要提供一个操作系统普通 user,以便 Gitea 运行在非 root 账号下,可能应该禁止这个 user 通过 shell 登陆系统,以加强安全性。

2.  迁移仓库时使用指定代理

在国内服务器上镜像 GitHub 之类的国外仓库时,经常会因为网络原因失败,此时最理想的解决方案就是让 Gitea 自动使用一个有效的代理服务器。

编辑配置文件 /opt/gitea/custom/conf/app.ini ,加入如下这些行:

[proxy]
PROXY_ENABLED = true
PROXY_URL = socks5://127.0.0.1:21080
PROXY_HOSTS = *.github.com,*.githubusercontent.com

[migrations]
ALLOW_LOCALNETWORKS = true

在示例的配置内容中,

  • PROXY_URL 现在使用的是 socks5 代理,也可以设置为 http/https/socks4 协议的代理(如果 URL 写 socks:// 开头,就会被当做 socks4 协议的代理)。
  • PROXY_HOSTS 是指定在迁移仓库的时候,访问哪些域名时要使用代理(支持通配符,多个域名可以用英文逗号分隔)。
  • 类似在示例中那样,代理如果是配置在 127.0.0.1 上的,那么还得开启 ALLOW_LOCALNETWORKS 选项,否则 Gitea 会拒绝迁移走代理的仓库(因为会以为仓库的原始地址在 127.0.0.1 上)。

各参数的详细含义,在 Configuration Cheat Sheet 页面都有详细说明。

GlossyBlue theme adapted by David Gilbert
Powered by PmWiki