Git deposunu temizleyemiyorum. Eğer denersem, bu hata mesajını alıyorum:
$ git gc
Counting objects: 8828, done.
fatal: Cannot handle files this big
error: failed to run repack
Google'a gidersem, kelimenin tam anlamıyla yalnızca 2 sonuç vardır: Bu soru ve bu soruyu ilk gönderdiğimden 2 dakika sonra gönderilen bir pastebin girişi olarak hata mesajı Yani başka hiç kimsenin sorunu yok gibi görünüyor.
Verilen ve git ile izlenen 4.8 GB'lık bir dosya var ve git dizüstü bilgisayarımda çalışırken yaklaşık 8 ila 9 GiB sanal ram alıyor git gc
ve raspi'mde yalnızca 1 GB fiziksel ram var. Ancak, genellikle 1 GiB takas vardır ve ben sadece bu işlemi yapmak için 30 GiB takas ekledi. Bu yüzden yeterince koç olmalı.
Ne yazık ki, hata mesajı, temizleme komutunun bu kadar büyük dosyaları işleyememesinin nedenini içermiyor. Bu yüzden, sistemimin sınırlayıcı özelliğinin ne olduğunu bilmiyorum.
Sorun nedir ve ahududu pi üzerinde temizlik yapmak mümkün mü? (Bir masaüstü bilgisayara aktarmak bana iyi bir çözüm gibi görünmüyor.)
Aslında raspi kullanarak daha büyük depoları temizlemeyi planlamıştım, çünkü yine de çalışıyor ve bu şekilde bilgisayarımın saatlerce çalışmasına gerek kalmayabilir.
Belki de repoyu klonlamanın temizlenmiş bir repo vereceğini düşündüm. Ancak, bu çıktıyı alıyorum:
$ git clone ../Documents
Cloning into 'Documents'...
done.
fatal: Cannot handle files this big
warning: Clone succeeded, but checkout failed.
You can inspect what was checked out with 'git status'
and retry the checkout with 'git checkout -f HEAD'
Ancak, --bare
clone komutuna ekleme anında anında hata verir. (Muhtemelen bazı ext4 sihrleri devam ediyor, bu yüzden dosyalar yazı üzerine kopyalanıyor.) Söylemeye gerek yok, hiçbir temizlik yapılmıyordu. Ama bu bir ipucu içerebilir, o yüzden size haber vereyim.
git gc
ve daha sonra tekrar ekleyebilirsiniz (gerekirse). En zarif yol değil, pragmatik.
objects/pack
.