Git 2.41 allaqachon chiqarilgan va bu uning yangiliklari

git 2.41

Git 2.41 repozitoriylarni boshqarishda yaxshilanishlarni amalga oshiradi

Uch oylik rivojlanishdan so'ng, yangi versiya chiqarilishi taqsimlangan manbalarni boshqarish tizimi Git 2.41. Oldingi versiyaga nisbatan, 542 ta o'zgartirish qabul qilindi yangi versiyada 95 ta ishlab chiquvchilar ishtirokida tayyorlangan, ulardan 29 tasi birinchi marta ishlab chiqishda ishtirok etgan.

Git haqida bilmaganlar uchun buni bilishingiz kerak eng mashhur versiyalarni boshqarish tizimlaridan biridir, vilkalar va vilkalarning birlashishiga asoslangan moslashuvchan chiziqli bo'lmagan rivojlanish vositalarini ta'minlovchi ishonchli va yuqori samarali dasturiy ta'minot.

Git 2.41 ta muhim voqealar

Ushbu yangi versiyada bu ajralib turadi "eshirib bo'lmaydigan" ob'ektlar bilan ishlash yaxshilandi havola qilinmaganlar omborda (filiallar yoki teglarga havola yo'q). Axlat yig'uvchi ob'ektlarni olib tashlaydi, lekin ular poyga sharoitlaridan qochish uchun olib tashlanishidan oldin ma'lum vaqt davomida omborda qoladi.

Ob'ektlar davrini kuzatib borish uchun, teglar ularga biriktirilishi kerak o'xshash ob'ektlarni o'zgartirish vaqti bilan, bu ularni paketli faylda saqlashga imkon bermaydi, unda barcha ob'ektlar umumiy o'zgarish vaqtiga ega.

Ilgari har bir ob'ekt alohida faylda saqlangan, bu hali o'chirilmaydigan ko'plab yangi ob'ektlar mavjud bo'lsa, muammolarga olib keldi. Yangi versiyada Cruft Packs sukut bo'yicha ob'ektlarni qadoqlash uchun ishlatiladi «ulanib bo'lmaydigan", bu barcha ob'ektlarni paketli faylda saqlash va har bir ob'ektni o'zgartirish vaqti haqidagi ma'lumotlarni ".mtimes" kengaytmali faylda saqlanadigan va ".idx" kengaytmali indeks fayli bilan bog'langan alohida jadvalda aks ettirish imkonini beradi. ".

Ushbu yangi versiyada ko'zga tashlanadigan yana bir o'zgarish bu paketli fayllar uchun diskdagi revindex xizmati yoqilgan. Torvalds/Linux omborlarida sinovdan o'tkazilganda, teskari indeksdan foydalanish ko'rsatiladi. git push operatsiyalarini tezlashtirishga imkon berdi ko'p resurslarni 1,49 marta sarflaydi va oddiy operatsiyalar, masalan, bitta ob'ekt hajmini hisoblash "" yordamida.git cat-file –batch='%(objectsize:disk) "" 77 marta.

Yangi versiyaga kiritilgan teskari indeks ob'ektning identifikatsiyasini aniqlash jarayonini tartibga solishga qaratilgan ob'ektning paket faylidagi joylashuvi haqidagi ma'lumotlardan. Indeksni yaratish jarayoni "ob'ekt pozitsiyasi" juftliklari qatorini yaratish va ularni joylashuv bo'yicha saralashdan iborat bo'lib, bu katta paketli fayllar uchun vaqt talab qilishi mumkin.

Masalan, to'g'ridan-to'g'ri indeksdan foydalanadigan ob'ektlarning mazmunini ko'rsatish operatsiyasi ob'ektlarning o'lchamini ko'rsatish operatsiyasidan 62 marta tezroq bo'lgan, buning uchun ob'ekt ma'lumotlari indekslanmagan. Teskari indeksdan foydalangandan so'ng, bu operatsiyalar taxminan bir xil vaqtni olishni boshladi. Teskari indekslar, shuningdek, tayyor ma'lumotlarni diskdan to'g'ridan-to'g'ri uzatish orqali olish va jo'natish buyruqlarini bajarish orqali ob'ektni jo'natish jarayonini tezlashtirishga imkon beradi.

Bundan tashqari, ta'kidlangan Git 2.41 da WWW-Authenticate sarlavhalarini o'tkazish uchun qo'shimcha yordam qo'shildi hisob ma'lumotlarini qayta ishlovchi va autentifikatsiya xizmati o'rtasida cheklangan omborlarga kirishda hisob ma'lumotlarini uzatish uchun foydalaniladigan "hisob ma'lumotlari yordamchisi" protokoliga. Moslik WWW-Authenticate sarlavhasi bilan OAuth doirasi parametrlarini alohida foydalanuvchi loginiga o'tkazish imkonini beradi omborlarga yanada aniqroq tarzda o'tkazing va so'rovlar uchun mavjud doiralarni cheklang.

Of ko'zga tashlanadigan boshqa o'zgarishlar yangi versiyasi:

  • Format opsiyasi qo‘shildi%(oldinda-orqada: )» buyrug'i bilan har bir murojaat uchun, Bu sizga boshqa filialga nisbatan ma'lum bir filialda mavjud yoki etishmayotgan topshiriqlar soni haqida darhol ma'lumot olish imkonini beradi.
  • Variant qo'shildi «-chinni» buyrug'i bilan "git fetch", formatda chiqish hosil qiladi « », kamroq o'qilishi mumkin, lekin skriptlarda tahlil qilish uchun qulayroq.
  • Konfiguratsiya qo'shildi "fetch.hideRefs" operatsiyalarni tezlashtirish uchungit fetch» server ob'ektlarning to'liq to'plamini yuborgan tekshirish bosqichida ma'lumotnomalarning bir qismini mahalliy omborda yashirish, bu tekshirishni faqat ma'lumotlar to'g'ridan-to'g'ri olinadigan serverlar bilan cheklash orqali vaqtni tejaydi.
    Buyruq "git fsck» mavjudlik bitmaplari va teskari indekslarda buzilishlarni tekshirish, nazorat summasini moslashtirish va qiymatni tekshirish qobiliyatini amalga oshiradi.
  • Buyruq "git clone --local" Endi $GIT_DIR ichidagi simli havolalarni o'z ichiga olgan ombordan nusxa ko'chirishga urinayotganda xatolikni ko'rsatadi.

Nihoyat, agar siz bu haqda ko'proq bilishni xohlasangiz, tafsilotlarga murojaat qilishingiz mumkin Quyidagi havolada.


Maqolaning mazmuni bizning printsiplarimizga rioya qiladi muharrirlik etikasi. Xato haqida xabar berish uchun bosing bu erda.

Birinchi bo'lib izohlang

Fikringizni qoldiring

Sizning email manzilingiz chop qilinmaydi. Kerakli joylar bilan belgilangan *

*

*

  1. Ma'lumotlar uchun javobgardir: Migel Anxel Gaton
  2. Ma'lumotlarning maqsadi: SPAMni boshqarish, izohlarni boshqarish.
  3. Qonuniylashtirish: Sizning roziligingiz
  4. Ma'lumotlar haqida ma'lumot: qonuniy majburiyatlar bundan mustasno, ma'lumotlar uchinchi shaxslarga etkazilmaydi.
  5. Ma'lumotlarni saqlash: Occentus Networks (EU) tomonidan joylashtirilgan ma'lumotlar bazasi
  6. Huquqlar: istalgan vaqtda siz ma'lumotlaringizni cheklashingiz, tiklashingiz va o'chirishingiz mumkin.