我从远程仓库克隆了几棵工作树。如果这些是从同一个本地仓库克隆的,我会节省大量的磁盘空间,因为克隆操作系统会将repo文件硬链接。
是否可以从其他来源重新克隆以生成硬链接?
我意识到我可以更改remotes.origin.url,但这不会删除并重新链接文件。 Git也只管理目录的一部分,因此删除它并以这种方式重新创建它并不容易。
答案 0 :(得分:1)
如果空间是一个问题,你甚至可能对git clone中的--shared标志感兴趣。什么甚至不需要硬链接,所以它需要更少的空间。来自文档:
When the repository to clone is on the local machine, instead of using hard links, automatically setup .git/objects/info/alternates to share the objects with the source repository. The resulting repository starts out without any object of its own.
为什么删除,重新创建和发布 - 为什么不用硬链接或共享进行克隆,然后复制不由git cp -R -n source target
管理的文件,-n为
-n, --no-clobber
do not overwrite an existing file (overrides a previous -i option)