我期待减少将在海外使用我的存储库的人的下载时间。我现在收到了关于这太慢的投诉。
我在存储库上运行了一个脚本来查看所有对象并找出最大的对象。这是决赛桌:
| size | pack | SHA | location |
|----------+----------+----------+----------------------------------------------|
| 7755956 | 7715996 | ecb5febf | media/promo/some.mp4 |
| 7082482 | 7019098 | 108b2909 | media/promo/some.webm |
| 5154689 | 5079200 | 1c20bd3b | media/promo/some.ogv |
| 3889885 | 3657066 | 2ad1b747 | AdModule/AdModule/media/other.mp4 |
| 3799591 | 3772833 | 7a901d41 | AdModule/AdModule/media/other.ogv |
| 2130845 | 2119014 | e034cb72 | media/promo/trailer.webm |
| 2130845 | 2119014 | e034cb72 | media/promo/trailer.webm |
| 2130845 | 2119014 | e034cb72 | media/promo/trailer.webm |
| 1912643 | 1806844 | cbd2562f | media/promo/trailer.mp4 |
| 1912643 | 1806844 | cbd2562f | media/promo/trailer.mp4 |
| 1912643 | 1806844 | cbd2562f | media/promo/trailer.mp4 |
| 1371459 | 1356916 | bbb2c932 | AdModule/AdModule/media/trailer.webm |
| 277981 | 80590 | 61375a0c | AdModule/AdModule/Scripts/jquery-1.9.1.js |
| 260304 | 47616 | f4427aed | AdModule/packages/jQuery.1.9.1/jquery-1.9.1- |
现在,我可能会松动some.mp4
,some.webm
等等,因为在开发过程中它们被其他视频取代,其他开发人员将永远不需要旧视频。
我从来没有重写过 git history / squashed commits。所以,我害怕这样做:)
当我查看执行时发生的下载时间和报告的大小时,我git clone
收到的数据几乎没有存储库中存储的数据多(可能只有十分之一)。
所以,这是我的问题:我尝试删除包含大 blob 的提交是否会对我的情况有益,就像减少下载时间一样?如果没有,我可以做些什么来减少下载时间?
PS。我有完整的 SHA 总和,为了便于阅读,它们在表中被截断。
这是另一个表,它显示了.git
目录中实际文件的大小(比这个 repo 历史中需要的所有内容的总大小要小得多):
| size | file |
|----------+----------------------------------------------------------------------|
| 46802 | projects/take5/sdk/.git |
| 46680 | projects/take5/sdk/.git/objects |
| 42268 | projects/take5/sdk/.git/objects/pack |
| 20164 | projects/take5/sdk/.git/objects/pack/pack-594c78df5239b9e0dcd1014ac8 |
| 9712 | projects/take5/sdk/.git/objects/pack/pack-66fbcdd8ee5685720eb77a979a |
| 4176 | projects/take5/sdk/.git/objects/pack/pack-f6f37936674d8f016b58dce74e |
| 4176 | projects/take5/sdk/.git/objects/pack/pack-9f11f69dc046de80640de5d265 |
| 3960 | projects/take5/sdk/.git/objects/pack/pack-56985618be0c8c8596d12111fe |
| 551 | projects/take5/sdk/.git/objects/b9 |
跑步git gc
我可以减少大约 11 Mb 的总大小。