由于上海疫情,鸽了这么久。我一直想解决一下公司内网的SVN管理不方便的问题,于是就整了一下Gitea来实现内外网repo管理。说白了,就是放内外网分别放一个Repo,但是可以通过Git来实现分布式迁移Mirror。
部署Gitea
-
Gitea下载链接,速度慢就用迅雷(P2SP)
还有就是需要一个远程数据库,我推荐MySQL配置简单,在数据库中创建Gitea数据库,用默认的utf8 -
基本上Gitea的安装包是一件启动Term进程的。输入http://localhost:3000/(localhost也可以是服务器IP);直接在页面上填写需要的信息,例如数据库配置、Gitea服务器域名等。
-
配置完,他会进入/user/login的URI,返回根目录(刚才的网址)注册用户信息。
-
接着进入/user/login,登录后仓库还没有别慌,右上角加号是可以创建新的仓库的。缺点就是没有https协议来认证加密。自己因需配置。
Git Repo迁移
需要一台计算机来克隆源Repo
的镜像
$ git clone --mirror <Origin Git Repo Link>
下载后直接会出现后缀.git的文件夹,如果离线传递内网压缩它(7zip)
在.git文件夹下用git bash:
$ git push --mirror <Target Git Repo Link>
就可以看到创建的空的Repo已经加入了新的main镜像。