zoukankan      html  css  js  c++  java
  • Github Git Submodule递归下载

    最近需要下载rCore源代码进行学习,在下载的过程中,遇到Git仓库中的Submodule递归下载失败的问题。本文将记录如何解决此问题。
    此处以rCore仓库作为示例进行演示:

    (1) 使用镜像网站下载rCore:

    # git clone https://github.com/rcore-os/rCore.git
    # 在原下载网址后添加cnpmjs.org地址,转为从镜像网站下载
    git clone https://github.com.cnpmjs.org/rcore-os/rCore.git
    

    (2)修改submodule配置

    进入下载后的rCore文件夹,可见文件目录如下所示:

    打开.gitmodules文件,修改文件中的url为镜像网站地址,修改后如下所示:

    (3)同步Submodule变更

    git submodule sync
    
    # 执行结果如下所示
    # Synchronizing submodule url for 'rboot'
    # Synchronizing submodule url for 'user'
    

    (4)更新Submodule配置

    此处需要注意,不要执行git submodule update --init --recursive命令。在Submodule中包含Submodule的情况下,递归下载很有可能会继续失败。此时执行git submodule update --init即可。

    (5) 处理Submodule嵌套场景

    在rCore/user文件夹下,嵌套有子Submodule,需要继续更新.gitmodules文件。改动效果如下所示:

    (6) 继续同步Submodule

    执行命令如下所示:

    如果实际项目中嵌套层级更深,请不断执行(4)(5)(6)步骤。

    至此,即完成rCore项目的Git Submodule文件递归下载。

  • 相关阅读:
    delphi vcl图像的二值化
    黑科技工具,推荐两款开源自动生成代码神器!
    推荐一款最强Python自动化神器!不用写一行代码!
    Java 展开或折叠PDF中的书签
    C# / VB.NET 获取PDF文档的数字签名信息
    滚蛋了
    MySQL 执行计划
    MySQL优化索引
    延时队列 DelayQueue
    【MongoDB】MongoDB 的存储过程
  • 原文地址:https://www.cnblogs.com/jason1990/p/15545221.html
Copyright © 2011-2022 走看看