A Git 2.46 forráskezelő rendszer kiadása

Három hónap kifejlesztés után megjelent a Git 2.46 elosztott verziókezelő rendszer új kiadása. A Git az egyik legnépszerűbb, megbízható és nagy teljesítményű verziókezelő rendszer, amely rugalmas, nem-lineáris fejlesztési eszközöket kínál, amelyek elágazásokon és fúziókon alapulnak. A történet integritásának és a visszamenőleges módosításokkal szembeni ellenállásának biztosítása érdekében a teljes korábbi történetet implicit hash-elés biztosítja minden egyes elköteleződésnél, és lehetőség van a fejlesztők digitális aláírásainak felhasználására a különböző címkék és elköteleződések érvényesítésére. A Git forráskódja GPLv2+ licenc alatt érhető el.

A korábbi kiadáshoz képest az új verzióba 746 módosítást fogadtak el, amelyeket 96 fejlesztő készített, közülük 31 először vesz részt a fejlesztésben. A fő újítások:

  • Kísérleti támogatás került bevezetésre egy új típusú bitkép — a „pseudo-merge reachability bitmap” — számára, ahol a „reachability bitmap” struktúrával ellentétben az elköteleződésekhez kapcsolódó objektumkészletek adatai nem minden egyes elköteleződéshez kötődnek, hanem több elköteleződéshez egyidejűleg. Ez a struktúra lehetővé teszi, hogy egyetlen bitkép kerüljön felhasználásra az objektumok meghatározásához különböző ágak elköteleződéseihez, ami nagyobb tárolókban lehetővé teszi, hogy elkerüljük a sok különálló bitkép létrehozását, és jelentősen felgyorsítja az objektumok bejárását annak meghatározásakor, hogy mely objektumokat kell küldeni az ügyfélnek olyan műveletek végrehajtásakor, mint a „git fetch”, „git rev-list” és „git clone”. Az új típusú bitkép és annak kiválasztásának és használatának logikájának aktiválásához egy sor „bitmapPseudoMerge” beállítást javasoltak: git config bitmapPseudoMerge.all.pattern ‘refs/(heads|tags)/’ git config bitmapPseudoMerge.all.threshold now git config bitmapPseudoMerge.all.stableThreshold never git repack -adb
  • Megvalósult egy új parancssori felület a „git config” parancshoz, ahol a beállítások és szekciók megtekintésére, átnevezésére és törlésére szolgáló, például „—get”, „—get-all”, „—unset” és „—remove-section” eljárások helyett egy külön álló alparancsok készlete áll rendelkezésre. Például a tároló összes beállításának megjelenítéséhez mostantól a „git config list” parancs használható, míg egy adott paraméter tartalmának megtekintéséhez a „git config get ” parancs használható. Az eredmények további szűréséhez a „—regexp” opció segítségével reguláris kifejezés alapú szűrő adható meg.
  • A „credential helper” protokollhoz, amelyet a korlátozott hozzáférésű tárolókhoz való hitelesítő adatok átadására alkalmaznak, támogatás került az „authtype” és „credential” új mezőihez, lehetővé téve a HTTP-hitelesítési rendszerekhez tartozó kezelők létrehozását, amelyek nem korlátozódnak a felhasználónév és jelszó ellenőrzésére, például a Bearer Token használata esetén az OAuth 2.0-ban. Eddig az ehhez hasonló hitelesítési rendszerek használatához nyílt formátumban kellett megadni a bizalmas adatokat a http.extraHeader paraméterben. Továbbá a protokollhoz hozzáadva lett a hitelesítő adatok kezeléséhez tartozó rendszerek állapotának mentésének lehetősége, támogathatva a több lépésből álló hitelesítési módszereket, mint amilyenek az NTLM és Kerberos protokollok.
  • Folyamatosan fejlesztik a kísérleti „reftable” backendet, amely a tárolókban az ágakra és címkékre mutató hivatkozások hatékony tárolására szolgál. Ez a backend blokkalapú tárolást használ, amelyet a JGit projekt alkalmaz, és optimalizálva van nagyon nagy számú hivatkozás tárolására (a hagyományos hivatkozásformátumok hatalmas költségeket okoznak a nagy számú hivatkozást tartalmazó tárolókban, mivel nagyon sok fájl helyezkedik el egy mappában a $GIT_DIR/refs mappa használata esetén, vagy minden módosításkor egy nagy fájlt kell felülírni a $GIT_DIR/packed_refs fájlban). Az új verzióban hozzáadva lett a „git refs migrate —ref-format=reftable” parancs, amely lehetővé teszi a meglévő tárolók átállítását a „reftable” backendre (korábban a backend csak a tároló inicializálásakor került aktiválásra).
  • A git csapatba hozzáadódott a "—no-advice" opció, amely letilt minden ajánlásokat és tippet, ami hasznos lehet az automatizált git hívások során a log felesleges információval való túlterhelésének megelőzésére.
  • Megkezdődött néhány ellenőrzés átültetése a tesztsorból unit-tesztek használatára, ami egyszerűsíti az alacsony szintű komponensek tesztelését, és növeli a tesztelési folyamat hatékonyságát a Windows platformon, ahol nagy költségek merülnek fel, amikor nagyszámú folyamatot indítanak a shell-scriptek formájában megvalósított tesztek futtatása során.
  • A színbeállítások elemzésére szolgáló kódba belekerült a "#RGB" formátum használatának lehetősége a "#RRGGBB" mellett.

Forrás: opennet.ru

Megbízható hosting vásárlása weboldalak számára, DDoS védelemmel, VPS VDS szerverek. 🔥 Megbízható webtárhely vásárlása DDoS védelemmel, VPS VDS szerverek | ProHoster