【发布时间】:2019-12-29 14:20:39
【问题描述】:
我有一个带有 4 个子模块的 main repo:
- kvm
- libvmi
- qemu
- 硝基
我想sparse-checkoutkvm,过滤掉一些不符合 Windows 文件系统限制的烦人文件
(AUX是保留文件名,kvm树包含aux.{h|c})
我知道如何在普通存储库上执行sparse-checkout,但是当我在子模块上执行相同操作时,它不起作用,.git/modules 目录丢失:
git clone https://github.com/KVM-VMI/kvm-vmi/
git -C kvm config core.sparseCheckout true
echo "!drivers/gpu/drm/nouveau/nvkm/subdev/i2c/aux.*" >> .git/modules/kvm/info/sparse-checkout # ignore aux.*
echo "/*" >> .git/modules/kvm/info/sparse-checkout # checkout everything else
git submodule update --init
第一个 echo 命令将失败,因为尚未创建 .git/modules。
我不知道谁负责创建这个目录。
我是否在某处遗漏了“init”命令?
注意:
我一直在 Stackoverflow 或博客文章中寻找解决方案:
但它们对我不起作用,因为我不想克隆单独的 kvm 存储库,然后将其添加到我的主存储库中。
谢谢。
【问题讨论】:
标签: git git-submodules sparse-checkout