3 回答

TA貢獻(xiàn)1911條經(jīng)驗 獲得超7個贊
您的解決方案已在本地和遠(yuǎn)程為您提供工作副本,但在遠(yuǎn)程存儲庫決定再次重新打包時會再次導(dǎo)致問題。幸運的是,您可以設(shè)置配置選項,這將減少在兩個存儲庫中重新打包所需的內(nèi)存量 - 這些實質(zhì)上會使您在重新打包時添加到默認(rèn)選項中的命令行參數(shù)。因此,您應(yīng)該登錄到遠(yuǎn)程,更改到存儲庫并執(zhí)行:
git config pack.windowMemory 10m
git config pack.packSizeLimit 20m
您可能希望在本地存儲庫中執(zhí)行相同的操作。(順便說一下,我猜你的存儲庫非常大,或者這些是內(nèi)存很少的機器 - 這些值對我來說似乎很低。)
對于它的價值,重新包裝獲得的malloc失敗時非常過去大型的倉庫,我也改變了價值觀core.packedgitwindowsize,core.packedgitlimit,core.deltacachesize,pack.deltacachesize,pack.window和pack.threads,但它聽起來好像你不需要任何進(jìn)一步的選擇:)

TA貢獻(xiàn)1860條經(jīng)驗 獲得超9個贊
由于無法直接訪問存儲庫,因此無法執(zhí)行重新打包,執(zhí)行淺層克隆然后逐漸獲取,同時增加深度對我有幫助。
git clone YOUR_REPO --depth=1
git fetch --depth=10
...
git fetch --depth=100
git fetch --unshallow //Downloads all history allowing to push from repo
希望它仍然可以幫助某人。

TA貢獻(xiàn)1869條經(jīng)驗 獲得超4個贊
我使用以下步驟解決了這個問題。
已將存儲庫從服務(wù)器檢出到我的本地計算機(使用ssh上的原始副本)
重新打包本地存儲庫
git repack -a -d --window-memory 10m --max-pack-size 20m
在服務(wù)器上創(chuàng)建了一個空存儲庫
git init --bare
將本地存儲庫推送到服務(wù)器
檢查是否可以克隆服務(wù)器存儲庫
- 3 回答
- 0 關(guān)注
- 1144 瀏覽
添加回答
舉報