git克隆。如何通过硬链接克隆本地回购?
我有一个本地git存储库。我想通过硬链接文件在本地计算机上克隆它以节省磁盘空间。我该怎么做呢?通过简化,Git存储库由3种文件组成:git克隆。如何通过硬链接克隆本地回购?,git,clone,Git,Clone,我有一个本地git存储库。我想通过硬链接文件在本地计算机上克隆它以节省磁盘空间。我该怎么做呢?通过简化,Git存储库由3种文件组成: 类似数据库的对象($GIT_DIR/objects):这些对象从不修改,有些可以添加,有些可以删除,但文件从不修改。这意味着它们在许多克隆之间可以完全相同 特定于存储库的配置和状态($GIT\u DIR):这些文件包含特定于存储库的配置(例如,$GIT\u DIR/info/*)。它们还存储存储库状态,例如什么是已知分支、什么是签出分支等。它们不能在存储库之间共享
$GIT_DIR/objects
):这些对象从不修改,有些可以添加,有些可以删除,但文件从不修改。这意味着它们在许多克隆之间可以完全相同$GIT\u DIR
):这些文件包含特定于存储库的配置(例如,$GIT\u DIR/info/*
)。它们还存储存储库状态,例如什么是已知分支、什么是签出分支等。它们不能在存储库之间共享,否则会违反设计-l
)
如果您希望同一驱动器上的两个存储库具有完全相同的状态和文件,那么您肯定应该创建一个符号链接。但是您不能硬链接配置和工作拷贝文件,因为它们更改太多并且特定于存储库。这不是完全否定了git的意义吗?使用硬链接,您将编辑主分支中的文件,而不是编辑克隆。您是否阅读了git help clone?这实际上是默认行为。当然我做了)但是git clone-l做“在可能的情况下,将.git/objects/目录下的文件硬链接以节省空间”。但我需要硬链接所有文件。多项式,我知道这一点。这正是我需要的。那个么你们不应该克隆,而应该创建一个repo的符号链接