Git 2.42 performans iyileştirmeleri, yeni komutlar ve daha fazlasıyla geliyor

git 2.42

BannerGit 2.42

Geçenlerde duyuruldu Git 2.42'nin yeni sürümünün yayımlanması, yeni bitmapler, yeni mekanizmalar, hata düzeltmeleri ve daha fazlası gibi çeşitli iyileştirmelerin uygulandığı sürüm.

Yeni versiyonda önceki versiyonla karşılaştırıldığında, 78 geliştiricinin katılımı453'si ilk kez geliştirilmekte olan 17 değişiklik kabul edildi.

Git 2.42'in öne çıkan özellikleri

Git 2.42'nin sunduğu bu yeni versiyonda bunun önerildiğini görebiliriz. yeni bir algoritma ihmal edildiği içinr bitmapler, her bir taahhüt için mevcut olan nesne kümeleri hakkındaki verileri yansıtır. Yeni algoritma önemli bir performans artışı sağlar bitmap, karşılaştırılan dallardan birini tamamen kapsamadığında. Bazı durumlarda yeni algoritmanın uygulanması 2 ile 15 kat arasında hızlanmaya neden olabiliyor.

Git 2.42'nin bir diğer yeniliği de komutta uygulanan iyileştirmelerdir "her başvuru için git«, bunun belirtildiği belirtiliyor artık hariç tutulan referansları tek tek kontrol etmek yerine, yeni yöntem her aralığın başlangıcını ve sonunu belirliyor hariç tutulur ve paketlenmiş referanslar dosyası ayrıştırılırken bunları yok sayar. Hariç tutma modeli yeni seçenekle belirtilir "–Dışla«. Ayrıca “Seçenek-Dahil etmek", hariç tutulan aralıktan tek tek parçaları döndürmenize olanak tanır.

Buna ek olarak, o komuta «her referans için» alınan iyileştirmelerPeki, şimdi « seçeneğiyle-Biçim» GPG imzalarına ilişkin bilgileri göstermek mümkündür; örneğin anahtarı, anahtar baskısını ve dijital imzayı oluşturan geliştiricinin adını ayrı ayrı gösterebilirsiniz.

Ayrıca not edilir ki, bir Ulaşılamayan nesneleri kaydetmek için yeni mekanizma (herhangi bir daldan veya etiketten erişilemeyenler), çünkü bu yeni sürümde eklenen seçenek «gc.recentObjectsHook"o çağrının harici bir programa yapılandırılmasına izin verir çöp toplama başlamadan önce. Parametrede belirtilen program gc.recentObjectsHook depoda ne kadar süre kaldıklarına bakılmaksızın çöp toplayıcının silinmeye karşı koruyacağı nesne tanımlayıcılarının bir listesini döndürür.

Ayrıca, Mekanizmanın yaygın kullanımı vurgulanıyor Deponun yalnızca bir kısmını kapsayan "seyrek dizin". Kısmi dizinler, kısmi klonlama işlemleri gerçekleştiren depolarda performansı artırabilir ve yerden tasarruf sağlayabilir (seyrek ödeme) veya havuzun kısmi bir kopyası üzerinde çalışın. Yeni sürüm komutu taşıdı fark ağacı kısmi indeksleri kullanmak için.

«Komutundagit rev listesi", seçeneği kullanırken "--stdin«, komut dosyalarından çağrıyı kolaylaştırmak için, « gibi genişletilmiş değiştiriciler--şubeler", "--etiketler»Y«--uzaktan kumandalar» yalnızca nesne kimliğine göre taahhütlere atıfta bulunan değiştiricilerin değil, giriş veri akışı aracılığıyla da belirlemeye izin verildi.

Gecikmeli mesaj silme uygulandı $GIT_DIR/TAG_EDITMSGBu, yalnızca etiketin başarılı bir şekilde yazılmasından sonra yapılır ve bir hata mesajı görüntülenmeden önce notun silinmesi sorununu çözer.

Git 2.42 ayrıca komutta birkaç yeni seçenekle birlikte geliyor «git paketi referansları» dosyanın güncellenmesinden sorumludur «paketlenmiş referanslar » saklanmayan yeni gevşek referanslarla. Belirli senaryolarda (sık sık güncellenen veya kaldırılan bir referans gibi), bu referansların dosyaya girmesinin hariç tutulması faydalı olabilir "paketlenmiş referanslar » Öncelikle "git paketi referansları» artık kendi bayraklarını kullanarak paketlediği referans kümesinin nasıl değiştirileceğini biliyor yeni “-dahil et” ve “-hariç tut”.

Diğer değişikliklerden bu yeni sürümden öne çıkan:

  • «Seçeneği eklendi-yetim»« komutunagit çalışma ağacı ekleme» Yetim kalan bir dalı temel alan çalışan bir ağaç oluşturmak.
  • modu "-Z»« komutuna eklendigit kedi dosyası«, ki bu, « modundan farklı olarak-z»yalnızca giriş için değil aynı zamanda çıkış için de boş kodlanmış karakterlere (yeni satırlar yerine) dayalı bir ayırma uygular.
  • Seçenek eklendi'--ayırıcı'Emir vermek'git notları ekleme» paragraf ayırıcıyı seçmek için.
  • Komuta "git diff --indeks yok» adlandırılmış kanallardan okuma yeteneğini uygular ("git diff <(process) <(substitute)").

Son olarak, bu konuda daha fazla bilgi edinmek istiyorsanız, ayrıntılara başvurabilirsiniz. Aşağıdaki bağlantıda.


Yorumunuzu bırakın

E-posta hesabınız yayınlanmayacak. Gerekli alanlar ile işaretlenmiştir *

*

*

  1. Verilerden sorumlu: Miguel Ángel Gatón
  2. Verilerin amacı: Kontrol SPAM, yorum yönetimi.
  3. Meşruiyet: Onayınız
  4. Verilerin iletilmesi: Veriler, yasal zorunluluk dışında üçüncü kişilere iletilmeyecektir.
  5. Veri depolama: Occentus Networks (AB) tarafından barındırılan veritabanı
  6. Haklar: Bilgilerinizi istediğiniz zaman sınırlayabilir, kurtarabilir ve silebilirsiniz.