Ajánló:
A fejlesztők örömére a Git 2.50 végleg lecseréli a régi recursive összevonási motort a korszerűbb és gyorsabb ORT megoldásra. Emellett számos újdonság és fejlesztés érkezett, amelyek hatékonyabbá teszik a karbantartási és összevonási műveleteket a nagyobb tárolókban is.
Vége a recursive korszaknak: itt az ORT
A Git új összevonási motorja, az ORT (Ostensibly Recursive’s Twin), amely már a 2.33-as verzióban bemutatkozott és 2.34 óta az alapértelmezett, most végleg kiszorítja a korábbi „recursive” motort. Az ORT nemcsak
gyorsabb és megbízhatóbb, hanem képes olyan műveletekre is, mint például a merge-képesség tesztelése anélkül, hogy tényleges összevonási objektumot hozna létre.
Újdonságok a „cruft pack” kezelésében
A cruft pack funkció — amely az elérhetetlenné vált objektumokat tárolja — már korábban megjelent (Git 2.37), de használata eddig kissé körülményes volt. A Git 2.50 bevezeti a --combine-cruft-below-size opciót, amellyel könnyen összevonhatók a kis méretű cruft csomagok, így javítva a repók hosszú távú egészségét.
Hatékonyabb bitmap-kezelés nagy projektekhez
A nagy méretű tárolók kezelése szintén fejlődött: a Git 2.50 bevezeti az inkrementális, több csomagot lefedő elérhetőségi bitképeket (multi-pack reachability bitmaps). Ez tovább épít a 2.47-es verzióban megjelent többcsomagos indexelésre, és lehetővé teszi a bitképek fokozatos frissítését, ami jelentős gyorsulást hozhat a tárolók átvizsgálásában.
Fejlesztések a git cat-file és git maintenance eszközökben
A fejlesztőknek szánt eszközök is bővültek:
- A git cat-file mostantól egyszerűbb objektumszűrést tesz lehetővé.
- A régi --allow-unknown-type kapcsolót eltávolították, hogy egyszerűbb legyen a működés.
-
A git maintenance új feladatokat támogat:
- worktree-prune – a felesleges munkakönyvtárak eltávolítása
- rerere-gc – konfliktusmegoldási előzmények törlése
- reflog-expire – lejárt hivatkozási naplók automatikus törlése
- Emellett lehetőség van a laza objektumok tömörítésének tételenkénti méretezésére is.
Egyéb fejlesztések
- Új konfigurációk a TCP keepalive viselkedéshez, ami javítja a HTTP-kapcsolatok stabilitását.
- A Perl-függőség lényegesen csökkent, a tesztkészletből és dokumentációs rendszerből teljesen eltávolították, ezáltal nőtt a hordozhatóság.
-
A felhasználói élményt finomhangolták:
- Jobban értelmezhető kommentek az interaktív rebase során.
- Hatékonyabb működés a sparse checkout esetén, különösen a git add -p és git add -i használatakor.
A Git 2.50 minden eddiginél gyorsabb, letisztultabb és felhasználóbarátabb eszközt kínál a verziókezeléshez – különösen a nagyméretű tárolókon dolgozó fejlesztők számára.
A teljes változáslista és további részletek elérhetők a hivatalos bejelentésben(külső hivatkozás).
