什么是仅限状态的Git存储库?

时间:2016-06-19 17:05:55

标签: git

documentation for the git update-index command可以说明--info-only开关:

  

--info-only用于注册文件而不将它们放在对象数据库中。这对于仅限状态的存储库非常有用。

由于Git是一个内容跟踪系统,而不是文件跟踪系统,我对您想要这样做的场景感到好奇;也就是说,使用索引注册文件而不实际将它们(可能是它们的内容)放在对象数据库中。

我还搜索了#34;仅限状态存储库"没有成功。有人可以澄清这样的存储库是什么以及它有什么用处?

1 个答案:

答案 0 :(得分:9)

added that feature是Bryan Larsen为“支持没有对象数据库工作”的一系列补丁的一部分。 This is what he explained it with

  

有时您可能希望对变更的内容进行审核跟踪,其中,   由谁。您无需知道更改的确切详细信息,   并且文件太大,以至于保留了数据的额外副本   对象数据库缓存非常昂贵。

     

Git(几乎)非常适合这种情况。那里很少   这比git-diff-cache快。

     

git的设计也有助于实现这一目标。 git-update-cache --cacheinfo   允许在没有数据库中的对象的情况下更新索引   然后可以围绕索引执行操作。但是,有   一些不方便的东西,一个显示塞子。

关于该线程上的 why 实际上没有进行任何讨论,我可以找到另一个涉及该主题的内容。所以这可能是布莱恩玩的想法并且想要为自己做好准备。

我个人并不知道任何实际使用的东西,所以这可能是一个理论上的用例。另一方面,这个想法非常简单,实际上可以用于某些事情。