> 文档中心 > 项目源代码迁移到另一个gitlab的方法(保留原来的提交记录)

项目源代码迁移到另一个gitlab的方法(保留原来的提交记录)

文章目录

  • 1.前提条件
  • 2.迁移方法一:从原有gitlab导出后再导入到新的gitlab
  • 3.迁移方法二:在IDE中通过git命令行导入
  • 4.IDE仓库切换之后怎么再切回去?
  • 5.团队其他成员怎么切换新git?

1.前提条件

有一个在公司gitlab上托管的项目(https://git.cloud.XXX.cn/myproject.git),已经使用了一年多,因为各种原因(安全策略、服务器到期)需要迁移到另一个gitlab,需要保留原来的提交记录信息。假设项目成员已在新gitlab注册了账户。

2.迁移方法一:从原有gitlab导出后再导入到新的gitlab

  1. 登录原gitlab服务器查看项目信息,如果所示选择导出项目
    在这里插入图片描述
  2. 导出成功后会收到邮件下载连接,点击下载到本地,如图
    在这里插入图片描述
  3. 登录新gitlab->新建项目->选择导入项目,上传上一步的邮件中下载的压缩包就可以了,传完文件刷新页面会一直显示导入中,这个过程可能比较慢,如果项目体量不超过150M建议选择下班后时间进行导入,这个时间段提交代码的人较少且网速较快,到第二天上班就可以切换到新的gitlab提交代码了。

3.迁移方法二:在IDE中通过git命令行导入

  1. 登录新gitlab->新建项目->选择创建空白项目,查看空白的项目信息,可以发现下图中Add your files部分有命令提示信息,获取其中的新git地址那一行命令
    在这里插入图片描述
  2. 命令行可以在IDE中直接使用,不需要cd到其他路径,把下面几行git命令顺序执行一下:
git remote rename origin old-origin  //把旧远端仓库改个名字,当前的一般默认origingit remote add origin http://10.0.0.XXX/management/myTest.git  //新的git地址是自动生成的git push -u origin --all   //同步推送远端仓库git push -u origin --tags  //同步推送远端仓库

4.IDE仓库切换之后怎么再切回去?

我在切换到新的gitlab后发现了一个问题,之前项目的Devops自动部署升级程序暂时无法修改(需要时间),但当天还得做需求提代码,所以需要暂时回到旧的gitlab远端提交,还原IDE中原gitLab信息的方法就是把上面那一步中的git逆着执行一下
先用git remote 查询自己有几个远端地址,我的只有刚才重命名的old-origin和新增的origin两个,把新的删除了旧的改回来就好

 git remote rm origin  git remote rename old-origin origin

改完别忘记确认是否切换回去了,更新代码可能会让重新选要提交的代码分支,更新没问题就操作成功啦

5.团队其他成员怎么切换新git?

  1. git命令
【git remote -v 】查看远程仓库的地址【git remote set-url origin URL】 更换远程仓库地址,URL为新地址或者【git remote rm origin】 删除现有远程仓库【git remote add origin url】添加新远程仓库
  1. 操作界面
    在idea或webstorem里选择Git–Remotes或者Manage Remotes
    项目源代码迁移到另一个gitlab的方法(保留原来的提交记录)
    修改这个orgin的地址为新的项目git地址就可以了,如果这里有多个remote远端地址,记得用上面的git命令看一下哪个是当前正在用的。

PS:觉得有用的话记得关注我!更多实用知识待看