Github库镜像到本地私有Gitlab服务器实现过程
作者:Thinbug
文章介绍了如何将GitHub仓库迁移至自己的GitLab服务器,首先,复制GitHub仓库的地址并克隆到本地,然后,添加远程GitLab仓库,并将本地仓库推送到GitLab,如果原仓库使用了GitLFS,还需要额外迁移LFS对象
上一节我们看了如何架设自己的Gitlab服务器,今天我们看怎么把Github库转移到自己的Gitlab上。
首先登录github,进入自己的库复制地址。
克隆镜像库
在本地新建一个文件夹
在文件夹执行CMD指令
git clone --mirror git@github.com:thinbug/A.git
–mirror参数就是拉取镜像库。
拉取结束,进入目录:
cd A.git

我们可以看到这个库是这样的。
添加远程库
通过git remote add 指令
假设原来的名字是A,没命名好,还可以改个名字如ProjectB
git remote add gitlab ssh://git@192.168.0.18:3022/Thinbug/ProjectB.git
这个gitlab是一个别名,表示了我的服务器地址,可以自定义。
我们可以输入一个指令一看就明白了。
git remote -v F:\Temp\新建文件夹 (5)\KCPBigSpace.git>git remote -v gitlab ssh://git@192.168.0.18:3022/Thinbug/ProjectB.git (fetch) gitlab ssh://git@192.168.0.18:3022/Thinbug/ProjectB.git (push) origin git@github.com:thinbug/A.git (fetch) origin git@github.com:thinbug/A.git (push)
- origin表示github的地址
- gitlab就是我的服务器
推送到我的私人Gitlab上
登录你的Gitlab,创建项目,名字需要是ProjectB,并且不能使用readme初始化项目,需要是空的。
git push --mirror gitlab
看到成功的提示就表示成功了。
LFS 对象:如果原仓库用了 Git LFS,需要额外迁移:
这个没有使用到还未测试。
git lfs fetch --all git lfs push --all gitlab
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
