摘要:我将 git clone 与 --reference 一起使用到具有所有适当文件但没有提交的存储库,我希望它可以节省网络带宽和磁盘空间。它没有。
我正在从 SVN 转换存储库。我做了一个
cd DIR1; git svn clone $REPO
然后我为 $REPO 设置了 subgit(非常好,顺便说一句)。Subgit 创建完全不同的提交,因为提交消息不同但文件都相同。
然后我做一个:
git clone --reference DIR1 $SUBGITREPO DIR2
我期待它获取所有提交对象,但从 DIR1 引用文件和目录。它不会那样做——它将完整的文件传输到 DIR2 中。
结帐后,我使用 git ls-tree 验证是的,文件的 SHA1在 DIR1 和 DIR2 中是相同的。
那么,为什么 git 不按我的预期做,我怎样才能做到呢?
制作一个新的克隆对我来说没什么大不了的,但是太平洋彼岸的人们希望节省一些网络费用……
TIA