0%

Git仓库迁移方案

背景

公司有一些前端代码在不同的托管平台上,为了统一管理和维护的效率,所以要将其他托管平台的代码全部快捷平迁到公司的私有 gitlab 上。

迁移方式

在你把原来的仓库推到你的仓库的新副本或镜像之前,你必须在新的托管平台上创建新的仓库。
在以下的这些示例中,exampleuser/new-repository 或 exampleuser/mirrored 是镜像。

镜像存储库

  1. 创建存储库的裸克隆
1
$ git clone --bare https://github.com/EXAMPLE-USER/OLD-REPOSITORY.git
  1. 镜像推送到新的存储库
1
2
$ cd OLD-REPOSITORY.git
$ git push --mirror https://github.com/EXAMPLE-USER/NEW-REPOSITORY.git
  1. 删除前面创建的临时本地存储库
1
2
$ cd ..
$ rm -rf OLD-REPOSITORY.git
  1. 拉取新存储库或者更改本地项目的源为新的存储库的地址
1
$ git remote set-url origin https://github.com/EXAMPLE-USER/NEW-REPOSITORY.git

其它方式

由于上面的方式可以满足目前已有的迁移需求,其它方式可参考文档