Vydání distribuovaného systému řízení zdrojů Git 2.27
Dostupný vydání distribuovaného systému řízení zdrojů Git 2.27.0. 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í nelineární vývojové nástroje založené na větvení a slučování. Pro zajištění integrity historie a odolnosti vůči retroaktivním změnám je v každém commitu použito implicitní hashování celé předchozí historie, je také možné certifikovat jednotlivé tagy a commity digitálními podpisy vývojářů.
Oproti předchozí verzi obsahovala nová verze 537 změn, připravených za účasti 71 vývojářů, z nichž 19 se podílelo na vývoji poprvé. Základní inovace:
Výchozí povolení implementované v předchozí verzi bylo vráceno druhá verze Komunikační protokol Git, který se používá, když se klient vzdáleně připojuje k serveru Git. Protokol se ve výchozím nastavení považuje za dosud nepřipravený k použití kvůli identifikaci kluzkých problémů, které vyžadují samostatné posouzení.
Přidána sada možností pro nastavení připojení SSL při přístupu přes proxy.
Informace zobrazované při použití transformačních filtrů „čistý“ a „rozmazaný“ byly rozšířeny. Nyní je například zobrazen objekt stromovitý, ve kterém se objeví objekt blob, který má být převeden.
Aby se předešlo zmatkům, příkaz "git description" nyní vždy používá rozšířený výstupní režim ("--long"), pokud je identifikována nahrazená značka spojená s odevzdáním (dříve byla na výstup podepsaná nebo anotovaná značka popisující odevzdání, i když byla přejmenován nebo přesunut v hierarchii „refs/tags/“ a příkaz „git show tag^0“ nefungoval podle očekávání – „refs/tags/tag“ nebyl nalezen nebo byl dokonce vrácen jiný tag).
Při provádění "git pull" se nyní zobrazí varování, pokud konfigurační proměnná pull.rebase není explicitně nastavena a možnosti "--[no-]rebase" nebo "--ff-only" nejsou použity. Chcete-li potlačit varování pro ty, kteří nemají v úmyslu provést operaci rebase, může být proměnná nastavena na false.
Možnosti „git pull“ společné pro „git fetch“ byly přezkoumány. Dříve nezmíněné podobné možnosti jsou zdokumentovány a chybějící možnosti jsou předány do git fetch.
Do příkazu „git rebase“ byla přidána možnost „--no-gpg-sign“, která přepíše nastavení „commit.gpgSign“.
Přidána možnost "git format-patch" pro zobrazení záhlaví "From:" a "Subject:" beze změny, bez převodu ne-ASCII znaků.
Do „git logu“ byla přidána možnost „-show-pulls“, která vám umožňuje zobrazit nejen odevzdání, ve kterém byly provedeny změny, ale také odevzdání pro sloučení těchto změn ze samostatné větve.
Jednotné interaktivní zpracování vstupu ve všech komponentách a přidáno volání funkce fflush() po zobrazení vstupní výzvy, ale před operací čtení.
"git rebase" vám umožňuje znovu použít všechna lokální potvrzení bez předchozího provedení operace "checkout", i když některé z nich byly dříve upstreamovány.
Hodnota konfigurační proměnné 'pack.useSparse' byla změněna na 'true', aby byla umožněna optimalizace, která byla dříve ve výchozím nastavení nabízena jako experimentální.
Přidána možnost „--autostash“ do „git merge“.
Vylepšené rozhraní „sparse-checkout“.
Do "git update-ref --stdin" bylo přidáno několik nových akcí
umožňující přímou kontrolu transakcí aktualizace odkazů, například implementaci dvoustupňových aktualizací atomických odkazů napříč více úložišti.
Přidány šablony userdiff pro dokumenty Markdown.
Odstraněno omezení na vyloučení všech cest v šablonách s řídkým výběrem, které vedou k prázdnému pracovnímu stromu.
Operace "git restore --staged --worktree" nyní standardně používá obsah z větve "HEAD" namísto vyvolání chyby.
Pokračovaly práce na přechodu na hashovací algoritmus SHA-2 namísto SHA-1.