git clone 子模块没下载全的问题解决

★ 1. 下载一个包含很多子模块的工程

例如:git clone --recursive https://github.com/caffe2/caffe2

如果网络不好或者其他原因导致子模块没有下载完全,这时用git pull是无法下载完全的。

注:这是在英文环境中执行的结果,英文Submodule在中文环境中翻译为“子模组”了。

从log中可以看出,有很多子模块(为节省篇幅,完整log略,可以自行下载测试)。

$ git clone --recursive https://github.com/caffe2/caffe2
Cloning into 'caffe2'...
remote: Counting objects: 36771, done.
remote: Compressing objects: 100% (12/12), done.
remote: Total 36771 (delta 6), reused 7 (delta 5), pack-reused 36754
Receiving objects: 100% (36771/36771), 149.13 MiB | 2.76 MiB/s, done.
Resolving deltas: 100% (26926/26926), done.

(这里只以子模块protobuf为例,其他子模块略)
Submodule 'third_party/protobuf' (https://github.com/google/protobuf.git) registered for path 'third_party/protobuf'
(略)
Cloning into 'third_party/protobuf'...
remote: Counting objects: 47717, done.
remote: Compressing objects: 100% (49/49), done.
remote: Total 47717 (delta 23), reused 23 (delta 5), pack-reused 47657
Receiving objects: 100% (47717/47717), 40.97 MiB | 59.00 KiB/s, done.
Resolving deltas: 100% (32097/32097), done.
Checking connectivity... done.
Submodule path 'third_party/protobuf': checked out 'a428e42072765993ff674fda72863c9f1aa2d268'
(略) 

★ 2. 下载子模块

git submodule update --init --recursive1

如果你不确定子模块是否都已经下载完全了,也可以执行一遍这个命令确认一下。

★ 3. 参考 git clone --help

•git 2.7.4版本:

--recursive, --recurse-submodules
 After the clone is created, initialize all submodules within, using their default settings. This is equivalent to running git submodule
 update --init --recursive immediately after the clone is finished. This option is ignored if the cloned repository does not have a
 worktree/checkout (i.e. if any of --no-checkout/-n, --bare, or --mirror is given)

•git 2.14.1版本:

--recurse-submodules[=<pathspec]
 After the clone is created, initialize and clone submodules within based on the provided pathspec. If
 no pathspec is provided, all submodules are initialized and cloned. Submodules are initialized and
 cloned using their default settings. The resulting clone has submodule.active set to the provided
 pathspec, or "." (meaning all submodules) if no pathspec is provided. This is equivalent to running git
 submodule update --init --recursive immediately after the clone is finished. This option is ignored if
 the cloned repository does not have a worktree/checkout (i.e. if any of --no-checkout/-n, --bare, or
 --mirror is given)

到此这篇关于git clone 子模块没下载全的问题解决的文章就介绍到这了,更多相关git clone 子模块没下载全内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • git clone下来的代码如何放在指定路径

    今天从github上clone了代码,最后出来形如: 但是话说我的东西下载到哪里去了呢????摸不着头脑,然后百度之,发现一般会放在命令行对应的路径下,也就是 win + R > cmd 查看命令行地址: 然后去此路径下寻找之,果然在这里. 那么,如何才能clone到自己指定的路径下呢?百度之得如下说法: git clone https://github.com/jquery/jquery.git e:/myJQuery/ 以上命令行的结尾,指定你想要的目录. git clone克隆或下载一个仓

  • git clone 子模块没下载全的问题解决

    ★ 1. 下载一个包含很多子模块的工程 例如:git clone --recursive https://github.com/caffe2/caffe2 如果网络不好或者其他原因导致子模块没有下载完全,这时用git pull是无法下载完全的. 注:这是在英文环境中执行的结果,英文Submodule在中文环境中翻译为"子模组"了. 从log中可以看出,有很多子模块(为节省篇幅,完整log略,可以自行下载测试). $ git clone --recursive https://githu

  • windows下Idea使用git clone failed. Could not read from remote repository.

    刚入职新公司,等了好几天,今天公司给发了新电脑,就要开始进行开发环境的安装了. 在软件(JDK,GIT,IDEA,MYSQL,Navicate...等等)都安装完成后,就开始项目的下载. 下载项目: 在使用IDEA下载的过程中就发现了新的问题---根据gitlab中项目的地址进行下载时提示"clone failed. Could not read from remote repository." 直接翻译是 "远程仓库无法读取". 为什么会无法读取呢? 1.无法链接

  • Windows 系统下的 Git 2.7 最新下载及安装教程图文详解

    Git是一个开源的分布式版本控制系统,用于高效的管理各种大小项目和文件.有着管理多样化.分享速度快.数据安全 更好的分支支持.方便多人协调等优点,而备受程序猿的喜爱. 下面给大家分享一个在[windows系统]下[Git 图形化界面]的安装教程 ,欢迎大家评鉴与参考.  一.软件下载    官网地址:https://git-scm.com/    1.打开 Git 官网,点击 [Downloads] 2.选择合适的操作系统(本教程是以 Windows 系统为例),选择 [Windows](会根据

  • git可视化工具Sourcetree使用全攻略(git冲突解决)

    目录 导入仓库 更新版本操作 修改 拉取 提交 分支操作 远程分支与本地分支 切换分支 贮藏 删除分支 获取远程分支 创建新分支 合并分支内容 冲突 合并冲突 未拉取便提交冲突 拉取代码与本地修改代码有冲突 撤销合并操作 尾言 导入仓库 首先我们需要知道自己的仓库如何拉取到本地. 这里以码云为例,找到对应的源路径/URL: 复制,然后来到Sourcetree: 更新版本操作 修改 当你本地代码发生改变时,会出现未暂存文件: 拉取 当别人更新了代码,而你本地没有拉取,拉取会亮起,可以点击拉取别人代

  • 仿vue-cli搭建属于自己的脚手架的方法步骤

    脚手架是啥 从前我总觉得脚手架是个很高大上的东西,好像得牛叉:ox:一点的人才写的出来,可望而不可即.其实并不是因为困难使我们放弃,而是因为放弃才显得困难(这是个好词好句:see_no_evil:).只要你肯花个一天半天的时间:fist:,也能写出属于你自己的脚手架. 早前脚手架这个词是从 vue-cli 这里认识的,我们通过 npm install -g vue-cli 命令全局安装脚手架后, 再执行 vue init webpack project-name 就能初始化好一个自己的项目,真是

  • 解决IDEA中Maven依赖包导入失败报红问题(总结最有效8种解决方案)

    问题描述: 真的,说来话长,这应该是我花最多时间去解决关于Maven依赖包导入的问题,以前粘贴复制导入,自动下载成功了, 这次怎么搞,怎么让他自动下载都还是红红的一片, 花了大半天,各种尝试,只为搏得问题解决!!! 真的看着都难受, 但是, 终于, 还是让我搞定了,这次让我汇总所有最有可能解决这依赖问题的方法,下次遇到这种问题, 真的要说再见了 , 话不多开,开货!!!方案1:(本人平时遇到这问题的常规操作) 当一开始遇到导入的依赖报红了,直接把那段刚导入的对应依赖删了,然后又重新导入,它自动会

  • Pytorch 使用Google Colab训练神经网络深度学习

    目录 学习前言 什么是Google Colab 相关链接 利用Colab进行训练 一.数据集与预训练权重的上传 1.数据集的上传 2.预训练权重的上传 二.打开Colab并配置环境 1.笔记本的创建 2.环境的简单配置 3.深度学习库的下载 4.数据集的复制与解压 5.保存路径设置 三.开始训练 1.标注文件的处理 2.训练文件的处理 3.开始训练 断线怎么办? 1.防掉线措施 2.完了还是掉线呀? 总结 学习前言 Colab是谷歌提供的一个云学习平台,Very Nice,最近卡不够用了决定去白

  • 如何让利用Python+AI使静态图片动起来

    目录 前言: 1. 运行项目 2. Python API 前言: 这种技术一般是基于的GAN(生成对抗网络)来实现,今天我给大家分享一个开源项目,能够复现静态图片动起来效果,可以做些有趣的项目,也可以怀念故人. 大家在刷短视频的时候有没有刷到这样的视频,视频里一张静态的人物图片能动起来,如:歪歪头.眨眨眼. 类似于下面这种效果: 最左侧的人物是原始的动作,上面是静态图片.通过AI技术便可以让最左侧人物的动作运用到上面的静态图片上,从而让张图都可以做出相同的动作. 这种技术一般是基于的GAN(生成

  • 全网最全Git命令手册

    目录 常用语句 新建 配置 状态 信息:获取某些文件,某些分支,某次提交等 git 信息 添加 删除 分支 检出 远程同步 撤销: 提交 diff: 显示当前工作空间和提交的不同 grep:可以在版本库中快速查找 log: 显示这个版本库的所有提交 merge: 合并就是将外部的提交合并到自己的分支中 tag: push: 从远端版本库合并到当前分支 rebase(谨慎使用) 其他: 参考文档: 常用语句 git init # 初始化本地git仓库(创建新仓库) git config --glo

随机推荐