首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >测量git blob对象大小的正确方法是什么?

测量git blob对象大小的正确方法是什么?
EN

Stack Overflow用户
提问于 2019-05-28 11:55:48
回答 1查看 393关注 0票数 1

我正在用

代码语言:javascript
复制
fileSizeThreshold=2^19
git rev-list --objects --all \
| git cat-file --batch-check='"%(objecttype)","%(objectname)",%(objectsize),%(objectsize:disk),"%(rest)"' \
| sed -n 's/^"blob",//p' \
| awk -F',' '$2'">= ${fileSizeThreshold}" \
| sort -t "," --numeric-sort --key=2 > ${outDir}/largeBlobs

这给了我所有大于512 me的气泡。我想知道在考虑放置这个文件(它的路径模式.)时,需要考虑哪个大小是正确的。在Git大文件存储(LFS)中。

%(objectsize)还是%(objectsize:disk)

因为%(objectsize:disk)报告了一些奇怪的大小(粗体的):

  • "0901797d58f6916cad4ef4fd581d8254596bdd19",722013b,105 b

git猫文件的警告一节中,有一些关于这一点的说明,我不明白。

考虑到LFS,人们应该看看objectsize:disk,因为这是这个blob所使用的空间.?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-05-28 12:54:45

你应该看看%(objectsize)

当git存储气泡时,它可以将其存储为平面对象,也可以存储为打包对象。

  1. 当存储平面对象时,git仍然压缩内容,因此%(objectsize:disk)将反映blob的压缩大小;
  2. 当将气泡包装在一起时,git可能会选择仅使用其差异将blob2存储在blob1旁边; 在这种情况下:disksize for blob1将是blob的压缩大小,disksize用于blob2将是其与blob1的差异的压缩大小。

警告部分提到,一些blobs可能有非常低的报告disksize,因为只有他们的差异报告。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56341730

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档