繁体   English   中英

Git:如何创建带有指向Git主仓库的符号链接的本地仓库

[英]Git : How to Create local repo with symbolic links to the Git main repo

我想创建一个Git仓库,其中用户只能从Git存储库中提取文件,并且永远不会推入它。 由于克隆到远程仓库中的数据不需要修改,我想创建到主仓库的软链接以节省空间(数据将在许多用户之间重复)。

当我执行Git克隆时,我可以在本地仓库中创建到远程仓库中的文件的软链接吗?

例如,在git clone <path>/gitrepo .上有一些变化git clone <path>/gitrepo .

...其中gitrepo是主目录,命令应该创建我的本地git仓库,其符号链接指向gitrepo。 应该维护版本控制。 直到我做一个git pull,我的本地回购应该保持,即使主要的gitrepo已经向前移动。 git pull应该重新创建符号链接以指向最新的主回购。

我正在寻求用“版本控制的ln -s ”替换ln -s

谢谢,RB

当在本地克隆时,Git会自动执行此操作。 git clone的联机帮助页:

--local, -l

当要克隆的存储库位于本地计算机上时,此标志会绕过正常的“git aware”传输机制,并通过制作HEAD副本以及对象和refs目录下的所有内容来克隆存储库。 .git/objects/directory下的文件是硬链接的,以便在可能的情况下节省空间。 现在,当使用/path/to/repo语法指定源存储库时,这是默认设置,因此它本质上是一个无操作选项。 强制复制而不是硬链接(如果你试图备份你的存储库,这可能是合乎需要的),但仍然避免使用通常的“git aware”传输机制,可以使用--no-hardlinks

另一个有趣的标志可能是-s

--shared, -s

当要克隆的存储库位于本地计算机上而不是使用硬链接时,会自动设置.git/objects/info/alternates以与源存储库共享对象。 生成的存储库在没有任何自己的对象的情况下开始。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM