Trusence Her iddianın bir kaynağı var
Son güncelleme: 28 Eylül 2026 Ara English
← Tüm haberler
Modeller

Git 2.56 yayınlandı: daha güvenli git add, daha hızlı merge-base, daha küçük pack dosyaları

Git 2.56.0, 39’u ilk kez katkı veren 104’ten fazla geliştiricinin katkılarıyla geliyor; sürüm, çatışma çözümünü daha güvenli hale getirirken büyük depolarda merge-base ve repack performansını ciddi ölçüde iyileştiriyor.

Git 2.56.0 yayınlandı ve bu sürüme 104’ten fazla geliştirici katkı sağladı; katkıda bulunanlar arasında 39 yeni isim de yer alıyor.

Bu sürümde öne çıkan değişikliklerden biri, sadece çatışma yaşayan yolları dikkate alan ve stage etmeden önce bu dosyalarda çatışma işaretlerini tarayan `git add --resolved` seçeneği. Bu komut, seçilen normal dosyalardan herhangi birinde çatışma işaretleri kalmışsa hiçbirini stage etmeyi reddediyor ve index’i olduğu gibi bırakıyor. Böylece hem çözümlenmemiş çatışmaları hem de ilgisiz değişiklikleri yanlışlıkla stage etme riski azaltılıyor.

Merge-base hesaplamasında da önemli bir optimizasyon var. Yeni traversal kuralı, bir tarafın yalnızca ona özel commit’leri tükendiğinde geçmişi taramayı bırakıyor ve özellikle büyük monorepo’larda komutları belirgin şekilde hızlandırabiliyor; verilen bir örnekte traversal süresi 0.68 saniyeden 0.01 saniyeye düştü. Linux kernel deposunda `git merge-base --all v4.8 v4.9` komutu için traversal adımı 167,441’den 3,887’ye, süre de 0.29 saniyeden 0.01 saniyeye indi.

Sunucu tarafında ise path-walk repacking artık reachability bitmaps ve delta islands ile birlikte kullanılabiliyor. Fluent UI deposu üzerinde yapılan bir karşılaştırmada bu kombinasyon, pack boyutunu 558.5 MB seviyesinden 164.4 MB’a düşürürken hızlı nesne erişimini ve ref izolasyon garantilerini korumayı mümkün kıldı. Böylece büyük Git depoları için daha verimli ama ölçeklenebilir bir barındırma yapısı hedefleniyor.

Neden önemli

Bu sürüm, günlük Git kullanımında hem istemci hem sunucu tarafında hissedilecek bir dizi iyileştirme getiriyor. Çatışma çözümünde yeni `git add --resolved` davranışı, hatalı stage edilen dosyalardan kaynaklanan hataları azaltarak bakım süreçlerini daha güvenli hale getiriyor. Merge-base tarafındaki traversal optimizasyonları, özellikle büyük monorepo’lar ve Linux kernel gibi dev depolarda komut sürelerini fark edilir biçimde kısaltıyor. Path-walk repacking’in reachability bitmaps ve delta islands ile birlikte çalışabilmesi ise büyük depoların disk alanı maliyetini düşürürken, mevcut performans ve izolasyon beklentilerinden ödün vermeden barındırılmasına yardımcı oluyor.

Kaynaklar

  • GitHub Blog