[no subject]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Greetings!

I have very large git repository (>20Gb) and after repack the size of it increases by 1.3-2 times.
I try to understand why it is happened and how to solve this matter.

Details
I work in gamedev and we store under git all what we have: source code, textures and other binary data.
Now size of the main repository (.git) is about 23Gb right after cloning.
But if I run 'git gc' or 'git gc --aggressive' size of repository increases to more than 40Gb.
'git gc --auto' doesn't change existing packs and doesn't increase size so much.

For a long time we disabled 'gc auto' for all work PCs and repacked repository by script at night.
Script configures some options and runs 'git gc' without --auto and now the size of most repositories is more than 50Gb.
Here this options from script:
-- pack.threads 2
-- pack.windowMemory 16m
-- pack.depth 1
-- pack.window 10
-- gc.aggressiveWindow 10
-- pack.packSizeLimit 2g

I try to improve this script and find the way to decrease size of these repositories to initial (after clone) size. The size of repository is very important because it's located on SSD disk for comfort work.
I've tried different options for 'git gc' and 'git gc --aggressive' but can't achieve this - size of repository always about 40Gb and more.
Best result provides 'git gc --aggressive' with disabled pack.packSizeLimit, window and depth is 250 - it creates single pack about 36Gb.
In worst case repository size can be more than 60Gb.

Can you help me to understand what options I can try to repack repositories to initial size?

All work PCs have Windows 7 and git version >=1.8.1 installed.

All the best,
Fedor Eftimitsa
Senior Programmer

Nival
www.nival.com
www.zzima.com

Skype: d9fault

--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]