Gitrepo源码转储存

前言:

        此文档用于开发过程中源码来自外网下载速度缓慢,如多人多次下载会影响效率,故将外部源码使用git repo镜像方式存放于内网公共服务器,并提供下载方式增加下载速度。

一、下载外网代码到本地服务器

repo init -u ssh://git@xxxxcom/wm-s905x5m-coffey-u/platform/manifest.git -m wm-coffey-20240612.xml --repo-url=ssh://git@xxxx.com/tools/repo.git  --mirror(必填参数)

repo sync -f -d --force-sync -j8 //代码同步

解释一下上述命令:

        1、如果服务器中有对应版本repo,则可以直接使用repo init -u ssh://git@xxxx.com/wm-s905x5m-coffey-u/platform/manifest.git -m wm-coffey-20240612.xml

        2、repo版本和manifest提供的下载xml版本如果不一致,会出现未知问题比如:

        3、repo sync -f -d --force-sync -j8建议使用同款命令,如外部仓库过大传输过程中会有部分目录同步失败,完整执行一遍后可以再执行一次同步命令。

二、转储存操作

1、manifest

        场景一:查看下载后的代码仓库,如果存在manifest.git,则git remote -v直接获取路径

        场景二:查看下载后的代码仓库,如果不存在manifest.git,则执行以下操作创建manifest仓库

        到下载后仓库的上级目录

        git init --bare manifest.git

        cd manifest.git

        git remote add origin  ssh://user@10.10.xx.xx/home/xxx/xxx/sdk/manifest.git  (当前服务IP+初始话manifest.git路径)

        执行完毕后git remote -v 获取manifest仓库路径

2、将代码下载的xml上传到manifest仓库

还记得第一次检出代码时的manifest和wm-coffey-20240612.xml文件吗,随便找个临时目录下载外网的manifest仓库获取其中的wm-coffey-20240612.xml文件,并将其拷贝到刚创建的本地manifest仓库(git remote -v 获取到的仓库路径)

3、适配xml

        这里我解释一下原理:我们从外网下载代码的时候使用的是wm-coffey-20240612.xml来寻找外部源存放的各文件目录,当我们把代码镜像本地后代码目录结构基本是与外部保持一致的,所以我们只需要更改其中的外部引用路径为我们本地相对或绝对路径

改完之后git push提交

三、测试下载

       当以上转储步骤做完之后我们要在本地测试是否转储存成功

        需要信息:

                        新建的mainfest仓库路径

                        repo工具路径

                        xml文件名称

git clone http://10.10.61.201:9090/baseline/repo/wave/repo.git
repo/repo init -u ssh://user@10.10.xx.xx/home//amlogic_sdk/s/wave3/sdk/manifest.git -m wm-coffey-20240612
repo/repo sync -f -d --force-sync -j8

转储用到的场景不多,但是一旦遇到需要使用的场景那么相信此文档会给你带来一些帮助,有其他疑问可以留言,看到会回。

  • 6
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值