【Git】项目源码迁移到另一个gitlab(保留原来提交历史记录)

目录

前情提要

公司原来是自己私有部署的gitlab。有了研发云后就希望将代码推送到研发云的代码仓库上。这时候需要迁移并保留原来提交的历史记录。

迁移方案

  1. 登录新的gitlab(代码仓库)
  2. 新建空白项目
  3. 获取到新空白项目的git地址: http://10.0.0.XXX/management/myTest.git
  4. IDEA打开本地项目执行如下命令
shell 复制代码
#把旧远端仓库改个名字,当前的一般默认origin
git remote rename origin old-origin
#添加新的git地址
git remote add origin http://10.0.0.XXX/management/myTest.git
#同步推送远端仓库 -u指定仓库
git push -u origin --all
#同步推送远端仓库
git push -u origin --tags

注意!推送的时候可能会报错,这是gitlab的保护机制,因为这么推送会覆盖新代码仓库的所有操作,所以推送前保证我们新的代码仓库是空的!然后可以执行如下命令进行强制推送

shell 复制代码
# 强制推送当前分支到  origin仓库
git push -f -u origin --all
# 强制推送所有分支到 orgin仓库
git push -f -u origin --tags

IDEA远程仓库管理

右键项目->Git->Manage Remotes

可以在此处管理多个远程仓库的地址。默认使用的是origin

代码推送仓库地址选择

团队其他成员切换git

git命令

shell 复制代码
#查看远程仓库的地址
git remote -v
#更换远程仓库地址,URL为新地址
git remote set-url origin URL
或者
#删除现有远程仓库
git remote rm origin
#添加新远程仓库
git remote add origin url

操作界面

也可以使用如上的IDEA操作界面进行修改远程仓库地址。

相关推荐
YoungHong19923 小时前
Git Bisect 使用指南:高效定位引入 Bug 的提交
git·bug
冼紫菜3 小时前
[特殊字符]实战:使用 Canal + MQ + ES + Redis + XXL-Job 打造高性能地理抢单系统
java·redis·分布式·后端·elasticsearch·rabbitmq·全文检索
极小狐6 小时前
极狐GitLab 议题权重有什么作用?
开发语言·数据库·chrome·c#·gitlab
极小狐6 小时前
极狐GitLab 的压缩和合并是什么?
运维·git·ssh·gitlab·github
程序员沉梦听雨13 小时前
【Elasticsearch】入门篇
大数据·elasticsearch·搜索引擎
Gadus_13 小时前
Elasticsearch性能优化实践
大数据·elasticsearch·搜索引擎·性能优化
它说我会飞耶13 小时前
git 命令集
git
极小狐13 小时前
极狐GitLab 合并请求依赖如何解决?
运维·git·ssh·gitlab·github
八股文领域大手子16 小时前
如何给GitHub项目提PR(踩坑记录
大数据·elasticsearch·github
爱吃龙利鱼16 小时前
elk中kibana一直处于可用和降级之间且es群集状态并没有问题的解决方法
大数据·elk·elasticsearch