Vydání systému správy zdrojového kódu Git 2.53.

Byl zveřejněn release distribuovaného systému správy zdrojových kódů Git 2.53. Git se vyznačuje vysokým výkonem a poskytuje prostředky pro nelineární vývoj, založené na větvení a slučování. Pro zajištění integrity historie a odolnosti vůči „zpětným změnám“ se používá implicitní hashování celé předchozí historie v každém commitu a také ověřování digitálními podpisy vývojářů jednotlivých tagů a commitů. Kód Git je distribuován pod licencí GPLv2+.

Ve srovnání s předchozí verzí byla do nové verze zahrnuta 466 změn, které připravilo 70 vývojářů (21 z nich se podílelo na vývoji Git poprvé). Hlavní novinky:

  • Byla přidána možnost aplikovat strategii balení repozitářů „geometric“ („git repack —geometric“) na částečně klonované externí repozitáře fungující v režimu „promisor“ (chybějící objekty se dohrávají podle potřeby). Při přepracování s opčními parametry „—geometric“ se pack soubory s příponou „.promisor“ zpracovávají a balí odděleně. Strategie „geometric“ umožňuje zkrátit čas údržby velkých monorepozitářů díky selektivnímu přepracování objektů a vyloučení nadbytečných časově náročných operací, jako je slučování všech pack souborů (udržuje se geometrická progrese velikosti pack souborů, přičemž každý další pack soubor musí být minimálně dvakrát větší než předchozí).
  • Do příkazu „git fast-import“ byla přidána možnost „—signed-commits=strip-if-invalid“ pro odstranění digitálních podpisů z importovaných objektů, které se staly neplatnými po přepsání části historie repozitáře. Předtím bylo možné buď importovat, nebo odstranit všechny podpisy, bez rozlišení na platné a ztracené smysl. Možnost „strip-if-invalid“ umožňuje implementaci nástrojů pro zachování platných podpisů a znovu podepisování objektů se ztracenými aktuálními podpisy.
  • Do výstupu příkazu „git repo structure“ byla přidána informace o velikosti všech dostupných objektů (reachable) v repozitáři, rozdělená podle jejich typů. Informace jsou nyní zobrazovány v čitelném formátu s jednotkami měření a zobrazují se samostatně pro skutečné a na disku zabrané velikosti, což umožňuje odhadnout celkovou velikost repozitáře na disku. $ git repo structure | Struktura repozitáře | Hodnota | | ——————— | ———- | | * Odkazy | | | * Počet | 1.78 k | | * Větve | 5 | | * Značky | 1.03 k | | * Vzdálené | 749 | | * Ostatní | 0 | | | | * Dostupné objekty | | | * Počet | 421.37 k | | * Závazky | 88.03 k | | * Stromy | 169.95 k | | * Bloby | 162.40 k | | * Značky | 994 | | * Inflated size | 7.61 GiB | | * Závazky | 60.95 MiB | | * Stromy | 2.44 GiB | | * Bloby | 5.11 GiB | | * Značky | 731.73 KiB | | * Velikost na disku | 301.50 MiB | | * Závazky | 33.57 MiB | | * Stromy | 77.92 MiB | | * Bloby | 189.44 MiB | | * Značky | 578.13 KiB |
  • Do příkazu „git maintenance“ byla přidána podřízená příkazová funkce „is-needed“, která provádí údržbové operace v repozitáři pouze v případě nutnosti.
  • V experimentálním příkazu „git replay“ je nyní ve výchozím nastavení implementováno aktualizace odkazů v transakcích místo zobrazení, kam by měly odkazy směřovat, bez aktualizace.
  • Do příkazu „git blame“ byla přidána možnost výběru algoritmu hodnocení rozdílů pomocí volby „—diff-algorithm=“.
  • Do příkazu „git repo info“ byla přidána opce „—all“.
  • Podpora symbolických odkazů byla převedena z Git-for-Windows na platformu Windows.

Do předchozího vydání bylo přidáno varování o výchozím zapnutí sestavení komponent v jazyce Rust v Git 2.53. Nicméně, ve verzi Git 2.53 byly ve skutečnosti přidány pouze jednotlivé zlepšení podpory pro Rust (možnost sestavení bez GNU sed), ale sestavení s Rust při použití Makefile zůstává ve výchozím nastavení vypnuto (vyžaduje nastavení příznaku WITH_RUST), a při použití Meson se automaticky aktivuje v přítomnosti překladače rustc. V verzi Git 3.0 plánují zařadit nástroje Rust mezi povinné závislosti pro sestavení.

Zdroj: opennet.ru

Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster