我最近兴奋地了解了Git如何存储其对象:即,如果您正在寻找具有0f9f33986446bd8e832dac72177295bb75d3ec90
哈希的提交(或树或博客),您会发现它项目的.git
目录,位于objects/0f/9f33986446bd8e832dac72177295bb75d3ec90
下。换句话说,哈希的前两个字母是子目录,其余的是文件名。
看看存储是如何完成的,这很简洁,但后来我在Git Community Book中读到了包文件。
我是否正确理解了链接 - 它们是否未存储在同一目录结构下?如果没有,它们究竟存放在哪里?
答案 0 :(得分:2)
在./objects/pack
下(您可能需要关闭git gc
)。包装材料采用相当简洁的启发式方法,在实践中往往能很好地包装好。您可以快速搜索包:
cd ${PROJECT}/.git && find . | grep pack