【gitlab项目迁移】

需求:将gitlab项目从A组迁移到B组

经查,有两种方式,一种是项目在网页压缩后export,再import,另一种是终端操作。
但是我的项目分支过多,文件过大,30M左右,方法一会报错文件过大,最后采取方法二

方法1:网页端导入

可以参考https://cloud.tencent.com/developer/article/1606259

  1. 登录到A组gitlab,点击xxx项目,点击设置–>导出项目–>下载导出
    得到文件2020-02-19_15-21-337_xxx_export.tar.gz【gitlab项目迁移】_第1张图片
  2. 导入项目
    登录B组gitlab,点击新建项目,导入项目–>gitlab export。输入项目名(注意:此项目不要提前创建),选择文件,上传
    【gitlab项目迁移】_第2张图片
    【gitlab项目迁移】_第3张图片
    【gitlab项目迁移】_第4张图片
  3. 成功后就可以看到文件
    【gitlab项目迁移】_第5张图片

ps: 我的文件由于过大,方法一会报错,只能走方法二

方法二:终端push

可以选择想迁移的分支,并将tag、commit信息等都迁移
参考:https://segmentfault.com/a/1190000039919778

# 1. 从A组克隆代码
git clone https://username:[email protected]

# 2. 添加B的远程主机地址,gitlab为缩写名,
#    也可以不添加,但是后续命令需将gitlab替换为B地址
git remote add gitlab https://username:[email protected]

# 3. 推送master分支到B仓库
git push -u gitlab master

# 4. 推送其他分支到B仓库
## 4.1 git branch -a先查看本地分支和远程分支,git branch -r 查看远程分支
git branch -a 
## 4.2 checkout其他分支到本地,-b表示同步到远程分支,
## 如果本地已有该分支,git checkout dev即可
git checkout -b dev origin/dev
## 4.3 查看该分支的log信息是否正确,一定要查看!否则到最后错了都不知道哪里错了
git log
## 如果有多个分支,重复4.2和4.3
## 4.4 将所有分支push,push后在远程端确认一下log是否正确
## 我采取的操作是git push gitlab,log正确,加了--all没有试过,理论上是正确的 
git push --all gitlab
## 4.5 如果有tag,可以上传
git push gitlab --tags

你可能感兴趣的:(其它,git,github)