前几天公司项目做迁移工作,原本是想把gitlab做备份然后还原,但是在新的环境里是想使用ldap做统一管理来着,但是旧的gitlab在安装的时候出现点问题还原到新的不能使用ldap,因为时间比较紧项目不多就想着手动迁移。下面记录一下迁移的方法,我们直接迁移只能迁移一个默认的master的分支,但是qa分支和dev分支的就不能迁移过去了,下面看一下我的方法:
[wolf@wulaoer.org 🔥🔥🔥 beaglo ]$ git clone http://git-old.wulaoer.org/wulaoer/golang.git [wolf@wulaoer.org 🔥🔥🔥 beaglo ]$ cd golang [wolf@wulaoer.org 🔥🔥🔥 golang ]$ git remote rename origin old-origin [wolf@wulaoer.org 🔥🔥🔥 golang ]$ git remote add origin http://git-new.wulaoer.org/wulaoer/golang.git [wolf@wulaoer.org 🔥🔥🔥 golang ]$ git push origin --all [wolf@wulaoer.org 🔥🔥🔥 golang ]$ git push origin --tags
我们需要先从旧的gitlab上把原代码git下来,然后给分支做一下重命名,修改一下旧的origin的地址为新的地址,这样就可以push到新的环境里了,最后一步--tags是push代码里的tag。如果有多个分支,需要切换一下分支在循环操作,下面是切换到qa分支
[wolf@wulaoer.org 🔥🔥🔥 golang ]$ git checkout qa [wolf@wulaoer.org 🔥🔥🔥 golang ]$ git checkout -b qa old-origin/qa [wolf@wulaoer.org 🔥🔥🔥 golang ]$ git remote add old-origin/qa http://git-old.wulaoer.org/wulaoer/golang.git [wolf@wulaoer.org 🔥🔥🔥 golang ]$ git pull old-origin/qa qa [wolf@wulaoer.org 🔥🔥🔥 golang ]$ git push origin --all [wolf@wulaoer.org 🔥🔥🔥 golang ]$ git push origin --tags
因为上面推送master分支的时候旧的origin还是原来的gitlab的地址,所以需要修改一下,修改后在把旧代码里的qa分支同步到本地,最后在push到新的环境中,以及tag。
[wolf@wulaoer.org 🔥🔥🔥 golang ]$ git checkout dev [wolf@wulaoer.org 🔥🔥🔥 golang ]$ git checkout -b dev old-origin/dev [wolf@wulaoer.org 🔥🔥🔥 golang ]$ git remote add old-origin/dev http://git-old.wulaoer.org/wulaoer/golang.git [wolf@wulaoer.org 🔥🔥🔥 golang ]$ git pull old-origin/dev dev [wolf@wulaoer.org 🔥🔥🔥 golang ]$ git push origin --all [wolf@wulaoer.org 🔥🔥🔥 golang ]$ git push origin --tags
dev分支的推送和qa分支的一样,只是循环即可。如果项目比较多,我们可以写一个代码,这里需要循环的是新的gitlab地址和旧的gitlab地址,在把三个分支写成不同的函数,然后调用即可。这个以后有时间在写,有兴趣的可以自己试试。先写这么多吧,看看其他的吧。
您可以选择一种方式赞助本站
支付宝扫一扫赞助
微信钱包扫描赞助
赏