Bitbucket- ում Git-ը հոսթինգի ժամանակ կա 2 ԳԲ կոշտ սահմանաչափ. եթե դա գերազանցվի, ապա պահեստարան մուտք ունեք միայն կարդալու համար: Դա կանխելու համար դուք կարող եք, օրինակ, հետադարձ կերպով հեռացնել մեծ թղթապանակներ կամ ֆայլեր ձեր commit-ներից: Բայց այլ դեպքերում նույնպես (եթե մուտքի տվյալները գտել են իրենց ճանապարհը դեպի պատմություն կամ node_modules-ը կրկին սայթաքել է տիրապետելու համար), դուք պետք է հետադարձ կերպով շահարկեք Git-ի պատմությունը՝ հակառակ դրա բնույթին:
Այս մասին Bitbucket- ը մանրամասն հոդված է գրել: Գործը ամբողջությամբ գործի դնելու համար մենք նախ ստեղծում ենք նոր պահեստ:

Դրանից հետո մենք կլոնավորենք պահոցը տեղական մեքենայի դատարկ թղթապանակում:
6ab7686fc508ce87c52b10bb5d01ee51
Այժմ մենք ստեղծում ենք երկու ենթապանակ ՝ պատահական բովանդակության ֆայլերով:
6ab7686fc508ce87c52b10bb5d01ee51
Մենք հիմա հրում ենք վարպետին:
6ab7686fc508ce87c52b10bb5d01ee51
Այժմ Bitbucket- ում մենք գրեթե հասել ենք 2 ԳԲ ծանր սահմանին:

Սա կարող ենք նաև տեղական մակարդակով ստուգել (տե՛ս «size-pack»):
6ab7686fc508ce87c52b10bb5d01ee51

Այժմ խնդիրն այն է, որ հետադարձ ուժով հեռացնի «ֆու» -ն պահեստից `դրա չափը կիսով չափ կրճատելու համար: Դա անելու համար մենք նախ խմբագրում ենք ընթացիկ HEAD- ը և գրում պանակը gitignore- ում:
6ab7686fc508ce87c52b10bb5d01ee51
Վերջապես, մենք հեռացնում ենք պանակը BFG Repo Cleaner- ի միջոցով (BFG- ն համակարգի վրա պահանջում է ընթացիկ JRE ՝ որպես համակարգի պահանջ):
6ab7686fc508ce87c52b10bb5d01ee51
Այժմ արդյունքը կարող ենք տեսնել տեղական մակարդակում:
6ab7686fc508ce87c52b10bb5d01ee51

Բայց Bitbucket- ում պահեստի չափը դեռ չի փոխվել, քանի որ աղբահանությունը դեռևս չի իրականացվել հեռակա կարգով, և bitbucket- ը չի կատարում «git gc» ամեն սեղմումով:

Սա հաստատվում է նաև օժանդակությամբ:

Այսպիսով, լավագույնն այն է, որ հարցում ուղարկեք անմիջապես support@bitbucket.org էլեկտրոնային հասցեին ՝ պահեստում «git gc» ձեռքով գործարկելու համար: Կարճ ժամանակ անց դա արվեց նաև աջակցության թիմի կողմից:

Եթե պահեստը «նոր» եք տեղափոխում մեկ այլ համակարգիչ, ապա ընդամենը 0,9 ԳԲ-ն կհայտնվի սկավառակի վրա: Եթե ինչ-որ մեկն ունի տեղական 1,8 ԳԲ տարբերակ, ապա «git pull» - ը, որին հաջորդում է «git gc», բավարար է: