Github maksimum repo büyüklüğü

taydin

Timur Aydın
Staff member
Katılım
24 Şubat 2018
Mesajlar
21,796
Bugün github'a bir projede kullanacağımız linux çekirdek kodunu koymaya çalışırken şu hata mesajını aldım:

remote: fatal: pack exceeds maximum allowed size

Bunun anlamı, github'a koymaya çalıştığım projenin fazla büyük olduğu. Linux çekirdeğinin kaynak kodunun büyüklüğüne baktım, 2.5 GByte gibi. Github belgelerine bakınca, tek tek repo büyüklüğü ile ilgili bir üst limit verilmemiş, ama tüm repo'ların toplamı 100 GByte'ı geçemez denmiş.

Bununla ilgili araştırma yapınca aşağıdaki sayfaya denk geldim:


Burada, tek seferde böyle büyük bir repo'yu gönderince github'ın hata verdiğini, ama daha küçük parçalar halinde gönderilirse sorun olmadığı belirtilmiş. Hatta bu azar azar gönderme işini yapan bir de shell script verilmiş. Bu script'i denedim ve sorunsuz olarak çekirdek kodunu github'a yüklemiş oldum.

Bash:
#!/bin/bash

# Adjust the following variables as necessary
REMOTE=origin
BRANCH=$(git rev-parse --abbrev-ref HEAD)
BATCH_SIZE=500

# check if the branch exists on the remote
if git show-ref --quiet --verify refs/remotes/$REMOTE/$BRANCH; then
    # if so, only push the commits that are not on the remote already
    range=$REMOTE/$BRANCH..HEAD
else
    # else push all the commits
    range=HEAD
fi
# count the number of commits to push
n=$(git log --first-parent --format=format:x $range | wc -l)

# push each batch
for i in $(seq $n -$BATCH_SIZE 1); do
    # get the hash of the commit to push
    h=$(git log --first-parent --reverse --format=format:%H --skip $i -n1)
    echo "Pushing $h..."
    git push $REMOTE $h:refs/heads/$BRANCH
done
# push the final partial batch
git push $REMOTE HEAD:refs/heads/$BRANCH
 
Tabi bu script'i hemen al ve lokal sistemdeki git reponun içinden çalıştır olmaz. Bunun yaptığı varsayımlar var, onların geçerli olduğundan önce emin olmak lazım.

1) Öncelikle github'da boş bir repo oluşturulmalı.

2) Lokal repo'da, github üzerinde oluşturduğumuz repo'ya işaret eden bir "remote" eklenmeli ve bunun adı da origin olmalı.
 
  • Beğen
Reactions: nt

Forum istatistikleri

Konular
5,836
Mesajlar
99,533
Üyeler
2,479
Son üye
yiyehuoxing32

Son kaynaklar

Son profil mesajları

gruptaki arkadaşlara selamlar. sıteyi bu gün fark ettim. Asansör için 2x7 segment LCD gösterge üretmek istiyorum. acaba bu sayfadaki arkadaşlardan destek alabilirmiyim. LCD nin mantık açılımı ektedir.
deneyci wrote on TA3UIS's profile.
Selam.
Amatör telsiz lisansı nasıl alınıyor?
Lisansı olmayanı forumlarına almıyorlar. :)
Bilgi alamıyoruz.
cemalettin keçeci wrote on HaydarBaris's profile.
barış kardeşim bende bu sene akıllı denizaltı projesine girdim ve sensörleri arastırıyorum tam olarak hangi sensör ve markaları kullandınız yardımcı olabilir misin?
m.white wrote on Altair's profile.
İyi akşamlar.Arabanız ne marka ve sorunu nedir.Ben araba tamircisi değilim ama tamirden anlarım.
* En mühim ve feyizli vazifelerimiz millî eğitim işleridir. Millî eğitim işlerinde mutlaka muzaffer olmak lâzımdır. Bir milletin hakikî kurtuluşu ancak bu suretle olur. (1922)
Back
Top