当前位置:   article > 正文

git仓库迁移场景_git mirror

git mirror

1.git仓库迁移

代码仓库从公网迁移内网,内外网网络不通,而且必须保证代码完整,包括分支以及提交记录。具体步骤如下

1.1 拉取所有分支镜像

1.2 现在本地电脑新建文件夹

mkdir newdir
  • 1

1.3 进入新建文件 newdir 执行下面命令拉取所有镜像代码

git clone --mirror 原仓库地址
  • 1

1.4 在内网gitlab上新建一个空仓库

1.5 将仓库中的旧的远端地址更改为新仓库地址

git remote set-url –-push origin https://*/*.git
  • 1

1.6 将修改后的Git镜像仓库推送到新的仓库

git push --mirror https://*/*.git
  • 1

2. 当前仓库A的一个指定分支1 推给 另一个仓库B的另一个指定分支2

可以通过2个主要命令git remote xxx 和 git push newOrigin 当前分支:目标分支 完成。

示例
假设有2个仓库rep1和rep2

rep1:当前仓库 rep2:目标仓库

我们想把当前仓库[rep1]的指定分支[branch1]

推给

另一个仓库[rep2]的指定分支[branch2]

具体步骤如下:

1.在当前仓库操作:更新代码库

git pull
  • 1

2.查看当前仓库origin只有一个,接下来我们要add另一个仓库的origin

git remote
or
git remote -v(可以看到origin的url)
  • 1
  • 2
  • 3

3.newOrigin:远程仓库名称,可以随便起个方便记忆的,目的是在本地添加一个新的远程链接

git remote add newOrigin master
 
eg:
 
git remote add rep2 branch2
or
git remote add rep2 master
rep2后面是rep2的一个分支,可以指定为master或你要push的目标分支,都可以。执行完命令后可以再次通过git remote or git remote -v查看现在有几个origin,大家可以自行试一试。
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

4.为新加的仓库设置上目标仓库的url地址(以下以gitee为例)

git remote set-url rep2 https://gitee.com/greatoak/rep2.git
  • 1

5.在A的本地仓库进行git push

git checkout 本地分支名
git push <远程主机名> <本地分支名>:<远程分支名>
 
eg:
 
git checkout branch1
git push newOrigin branch1:branch2
newOrigin是你想push上哪个远程库,branch1是你想push的那个分支,branch2是push到远程的那个分支。

注意,push前先切换到要push的当前分支上,然后再push。
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/羊村懒王/article/detail/507817
推荐阅读
相关标签
  

闽ICP备14008679号