我正在使用一个包含大量文件的存储库,需要数小时才能签出。我正在研究 Git 是否可以很好地与这种存储库一起工作,因为它支持稀疏签出,但我能找到的每个示例都执行以下操作:
git clone <path> git config core.sparsecheckout true echo <dir> > .git/info/sparse-checkout git read-tree -m -u HEAD
这个命令序列的问题是原始克隆也进行了检查。如果将 -n 添加到原始克隆命令,则 read-tree 命令会导致以下错误:
错误:稀疏结帐在工作目录上没有留下任何条目
如何在不先检查所有文件的情况下进行稀疏检查?
在 git 2.28 中工作
git clone --filter=blob:none --no-checkout --depth 1 --sparse <project-url> cd <project> git sparse-checkout init --cone
指定要克隆的文件和文件夹
git sparse-checkout add <folder>/<innerfolder> <folder2>/<innerfolder2> git checkout