如何重新链接git repo以从硬链接中受益

时间:2012-11-27 21:01:54

标签: git

我从远程仓库克隆了几棵工作树。如果这些是从同一个本地仓库克隆的,我会节省大量的磁盘空间,因为克隆操作系统会将repo文件硬链接。

是否可以从其他来源重新克隆以生成硬链接?

我意识到我可以更改remotes.origin.url,但这不会删除并重新链接文件。 Git也只管理目录的一部分,因此删除它并以这种方式重新创建它并不容易。

1 个答案:

答案 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)