Vydání systému pro správu verzí Git 2.44

Po třech měsících vývoje byl zveřejněn vydání distribuovaného systému pro správu zdrojových kódů Git 2.44. Git je jedním z nejpopulárnějších, spolehlivých a vysoce výkonných systémů pro správu verzí, který poskytuje flexibilní nástroje pro nelineární vývoj, založené na větvení a slučování. Pro zajištění integrity historie a odolnosti vůči změnám "zpětně" se používá implicitní hashování celé předchozí historie v každém commitu, je také možné ověření 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ím vydáním byla do nové verze přijata 503 změny, které připravilo 85 vývojářů, z nichž 34 se poprvé zapojilo do vývoje. Hlavní novinky:

  • Byla přidána nová příkazová funkce „git replay“, která může být použita jako alternativa k „git rebase“ a slouží k rekonstrukci historie na serveru bez pracovního stromu (bare-repozitář, který neobsahuje pracovní strom), zpracování několika větví současně, provádění operace rebase pro větve, které nejsou právě vybrané, nebo jednoduše ke zrychlení operací slučování.
  • Byla přidána podpora pro systém kontinuální integrace GitLab CI.
  • Do příkazů „git add“ a „git stash“ byla přidána podpora pro atributy cest „:(attr:…)“, určované analogicky k příkazu „git show“. Například „git add ‘:(attr:~binary)'“ lze použít k přidání všech textových (nebinárních) souborů do indexu. Dále v novém vydání byl navržen atribut „builtin_objectmode“ pro filtraci cest k souborům podle přístupových práv. Například „git add ‘:(attr:builtin_objectmode=100755)'“ lze použít k přidání všech spustitelných souborů.
  • Byla přidána podpora opětovného použití objektů, rozložených do několika balíčkových souborů, pro které existuje souhrnný index (multi-pack-index) s informacemi o dostupnosti objektů (optimalizace, která umožňuje odkázat na použití dat, která již existují v balíčkových souborech, místo skutečného přenosu dat). Od verze 2.44 git nyní může zpracovávat opětovné použití objektů napříč několika balíčkovými soubory bez nutnosti znovu balit repozitář do jednoho balíčkového souboru. Pro aktivaci nové funkce je třeba provést příkazy: git config —global pack.allowPackReuse multi git multi-pack-index write —bitmap

    po čemž lze sledovat počet balíčkových souborů, z nichž se opětovně používají objekty, ve výstupu „pack-reused … (from N)“ zobrazeném při provádění příkazu „git push“.

  • Příkaz „git rebase —autosquash“ nyní může být použit pro rebase operace v neinteraktivním režimu, což umožňuje provést rebase a rychle aplikovat opravné fixup změny, aniž by bylo nutné procházet seznam změn a neměnit proměnnou prostředí GIT_SEQUENCE_EDITOR.
  • Do příkazu „git merge-file“ byla přidána volba „—diff-algorithm“ pro výběr alternativního algoritmu pro hodnocení rozdílů mezi soubory.
  • V příkazu „git checkout -B []“ je zakázána aktualizace a vyzvedávání větví používajících jiné pracovní stromy. Pro obnovení starého chování byla přidána volba „—ignore-other-worktrees“.
  • Byla přidána možnost nastavit pro volbu „git config advice.pushAlreadyExists“ hodnotu „true“, která odstraňuje z výstupu nápovíd (hint) instrukci k jejich vypnutí („Disable this message with…“), která zabírá místo na obrazovce.
  • Bylo optimalizováno provádění příkazu „git for-each-ref“ s volbou „—no-sort“, která nyní produkuje výstup v neurčitém pořadí (dříve se při zvolení „—no-sort“ stejně používalo abecední třídění). Po provedení optimalizací použití „—no-sort“ nyní zrychluje „git for-each-ref“ asi o 20 % ve stávajících repozitářích s velkým počtem odkazů.
  • Do backendu pro správu přihlašovacích údajů wincred byla přidána podpora aktualizace tokenů OAuth, podobně jako je to realizováno u backendů credential-cache a credential-libsecret.
  • Do „git fetch“ byla přidána podpora konfiguračního parametru „fetch.all“, který bude zpracován podobně jako přidání volby „—all“ v příkazovém řádku.

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