Nová verzia Git 2.28, ktorá umožňuje nepoužívať názov «master» pre hlavné vetvy

Dostupný vydanie distribuovaného systému správy zdrojového kódu Git 2.28.0. Git je jedným z najpopulárnejších, najspoľahlivejších a najvýkonnejších systémov správy verzií, poskytujúc flexibilné prostriedky pre nelineárny vývoj založené na vetvení a zlúčení vetiev. Na zabezpečenie integrity histórie a odolnosti voči zmenám "zpětně" sa používa implicitné hashovanie celej predchádzajúcej histórie v každom commite, rovnako je možné autentifikovať digitálnymi podpisami vývojárov jednotlivé tagy a commits.

V porovnaní s predchádzajúcim vydaním bola do novej verzie prijatá 317 zmena pripravená za účasti 58 vývojárov, z ktorých 13 sa zúčastnilo na vývoji po prvýkrát. Hlavné novinky:

  • Pridané nastavenie init.defaultBranch, ktoré umožňuje vybrať ľubovoľný názov hlavnej vetvy, ktorý bude používaný predvolene. Nastavenie bolo pridané pre projekty, kde vývojárov trápia spomienky na otroctvo a slovo „master“ vnímajú ako urážlivú narážku alebo vyvoláva duševné trápenie a pocit neodčinenej viny. GitHub, GitLab a Bitbucket sa rozhodli predvolene namiesto slova „master“ pre hlavné vetvy používať slovo „main“. V Gite, ako aj predtým, pri vykonaní príkazu „git init“ sa predvolene naďalej vytvára vetva „master“, ale toto meno je teraz možné zmeniť. Napríklad na zmenu názvu počiatočnej vetvy na „main“ môžete použiť príkaz:

    git config —global init.defaultBranch main

  • Pridané optimalizácie výkonu založené na objavení sa v súbore commit-graph používaného na optimalizáciu prístupu k informáciám o commitoch, podpory filtrovaní Bloom, pravdepodobnostnej štruktúry, ktorá umožňuje falošné určenie chýbajúceho prvku, ale vylučuje vynechanie existujúceho prvku. Uvedená štruktúra významne urýchľuje vyhľadávanie v histórii zmien pri použití príkazov „git log — <path>“ alebo „git blame“.
  • V príkaze „git status“ je zabezpečený výstup informácií o postupe vykonávania operácie čiastočného klonovania (sparse-checkout).
  • Pre príkazy rodiny „diff“ bola navrhnutá nová konfigurácia „diff.relative“.
  • Pri kontrole cez „git fsck“ sa teraz posudzuje triedenie stromu objektov a identifikujú sa netriedené prvky.
  • Zjednodušené rozhranie na úpravu dôverných informácií vo výstupe trasovania.
  • Do skriptu automatického doplňovania vstupu bola pridaná podpora doplňovania možností príkazu „git switch“.
  • Do „git diff“ bola pridaná podpora odovzdávania argumentov v rôznych notáciách („git diff A..B C“, „git diff A..B C…D“ a pod.).
  • Do príkazu „git fast-export —anonymize“ bola pridaná možnosť určiť vlastné mapovanie prvkov na jemné prispôsobenie výstupu, aby sa uľahčila ladenie.
  • V „git gui“ sa povolilo otvárať pracovné stromy z počiatočného dialógu.
  • V protokole „fetch/clone“ bola implementovaná možnosť informovania klienta serverom o potrebe stiahnuť vopred pripravené pack-fázy spolu s prenášanými zabalenými údajmi objektov.
  • Pokračuje sa v práci na prechode na algoritmus hashu SHA-256 namiesto SHA-1.

Zdroj: opennet.ru

Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster