findgit回购的大小
什么是一个简单的方法来find我的git仓库的大小? 我不是说在我的回购的根目录上。 我有很多被忽略的文件,这样的大小会有所不同,从我的总回购大小。 我基本上想知道在克隆我的回购时将有多less数据被转移。
更新 git 1.8.3引入了一个更有效的方式来获得粗略的大小:
git count-objects -vH
(请参阅@VonC的答案)
对于“完整大小”的不同想法,您可以使用:
git bundle create tmp.bundle --all du -sh tmp.bundle
closures(但不是确切:)
git gc du -sh .git/
有了后者,你也可以算:
- 挂钩
- configuration(远程,推分支,设置(空白,合并,别名,用户的详细信息等)
- (请参阅我也可以从远程仓库获取存储到本地分支 )
- rererecaching(可以得到相当可观的)
- reflogs
- 备份(从过滤分支,例如)和其他各种东西(中间状态从rebase,对分等)
请注意,自git 1.8.3(2013年4月22日) :
“
git count-objects
”学会了“--human-readable
”又名“-H
”选项,以便根据需要显示Ki
/Mi
/GiB
各种大数字。
这可以结合杰克·莫里森在他的回答中提到的-v
选项。
git gc git count-objects -vH
( git gc
很重要,正如ABB的回答所提到的那样)
加(仍然git 1.8.3),输出更完整:
“
git count-objects -v
”学会了在对象存储中报告剩余的临时包文件和其他垃圾 。
git命令
git count-objects -v
会给你一个很好的估计git仓库的大小。 没有-v标志,它只会告诉你解压缩文件的大小。 这个命令可能不在你的$ PATH中,你可能不得不跟踪它(例如,在Ubuntu上我发现它在/ usr / lib / git-core /中)。
从Git手册页:
-v,–verbose
除了消耗的松散对象和磁盘空间的数量之外,它还报告包装对象的数量,包的数量,这些包所消耗的磁盘空间,以及运行git prune-packed可以删除的对象的数量。
您的输出将看起来类似于以下内容:
count: 1910 size: 19764 in-pack: 41814 packs: 3 size-pack: 1066963 prune-packable: 1 garbage: 0
您正在寻找的行是size-pack
。 这是所有压缩提交对象的大小,或者是新克隆存储库的最小可能大小。
如果你使用git LFS,那么git count-objects不会计算你的二进制文件,而只是指向它们的指针。
如果您的LFS文件由Artifactoryspipe理,则应使用REST API:
- 从任何search引擎获取www.jfrog.com API
- 查看获取存储摘要信息