git代码库迁移

代码迁移过程

1.首先确保你在目标服务器上已配置好ssh keys(当然,如果你使用的是http协议,可以忽略这一步)
94367a2e8f9516731af3213dae35a41e.jpg
如何创建和配置ssh keys?
戳这:

7dc7e8bd9c176eb7ea08df740d7f1f16.jpg

2.从源服务器克隆裸版本库到本机

git clone --bare git@gitlab.huayu.nd/xxxx/xxxx.git

此时,会从服务端将版本库克隆到本地当前目录,请确保当前目录为空
,否则,文件混在一起,你懂的.

3.进入到本机 xxxx.git目录:

cd xxxx.git

4.镜像推送代码到目标服务器:

git push --mirror git@git.sdp.nd/xxxx/xxxx.git

经过以上几步,你的git仓库就完整迁移到新的目标服务器上拉,包括所有commit,branch,tag. 一个不少:

55e24527e539e93a7d4fee67172e076c.jpg

WIKI迁移过程:

同上,只要把项目git地址后面加上".wiki"即可.如:

git@git.sdp.nd:edu-cloud-android/edu-people-forum.git

对应wiki:

git@git.sdp.nd:edu-cloud-android/edu-people-forum.wiki.git

本地代码指向:

  • 方法一
    直接重新clone一份.是个程序员都会了,不细说了.

  • 方法二

将本地已有代码库做重定向:
假设当前本地已有起源名称为"origin" --实际上默认的名字都是这个,你可以通过remote命令查看当前git对应的服务器信息,如下:

emp_2292_27.jpeg

  1. 备份已有起源"origin"为"origin_bak"
git remote rename origin origin_bak
  1. 添加新的起源"origin_new",指向git@**git.sdp.nd/xxxx/xxxx.git
git remote add origin_new git@git.sdp.nd/xxxx/xxxx.git
  1. 拉取新建的起源对应的服务器仓库:
git fetch origin_new

假设你使用的是idea,那么在右下角的git分支切换菜单中此时你将看到有如下变化:
7e4e085258d04834f0f16766c920bb89.jpg
ddfeffb3cd37357555fa113be28ec5ec.jpg

  1. 接下去就按平时的操作去checkout就行了.

建议在检出新的远程分支前先将当前已有一些分支删除,否则,你会看到一堆的分支…

附:

其它相关git命令参考:

  • 检出远程分支
git checkout -b *new_develop**origin_new/develop*
  • 删除本地分支
git branch -d *branch_name*
  • 删除本地仓库缓存的但远程早已删除的分支
git fetch -p
  • 删除起源(请确保所有代码都已推送push了,否则,你懂的)
git remote remove *origin_name*
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

梦07

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值