如何在现有签出中“引用”本地 git 存储库

  • 本文关键字:引用 本地 git 存储 git
  • 更新时间 :
  • 英文 :


当使用 git clone 从远程仓库克隆时,我可以给 git 一个提示,--reference有一个类似的本地仓库,可以在其中找到并共享一些对象。这样可以节省网络带宽和存储成本。

但是,如果我已经有两个存储库,ab,都是从远程克隆的。事后看来,我怎样才能达到效果,使a表现得像是用--reference=b克隆的?

(这不会节省带宽,但会释放一些磁盘空间。

仅使用 git-command ,我会

  1. 本地克隆bc(如果可能,通过硬链接重用常见对象)。

  2. c 中,将a添加为远程存储库,并从a获取差异。在c中创建所需的分支和远程。

  3. a替换为 c

链接公共对象(rsync --hard-linkcp -l)和git-gc应该有类似的事情。不过我没有完整的解决方案。

最新更新