Vydání distribuovaného systému pro správu verzí Git 2.23

Představení vydání distribuovaného systému správy zdrojového kódu Git 2.23.0. Git je jedním z nejpopulárnějších, spolehlivých a vysoce výkonných systémů pro správu verzí, který nabízí flexibilní nástroje pro nelineární vývoj založené na větvení a sloučení větví. 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 je také možné ověřit digitálními podpisy jednotlivých tagů a commitů.

Ve srovnání s předchozím vydáním bylo do nové verze přidáno 505 změn, připravených za účasti 77 vývojářů, z nichž 26 se účastnilo vývoje poprvé. Hlavní novinky:

  • Byly představeny experimentální příkazy „git switch“ a „git restore“, které mají rozdělit méně související funkce „git checkout“, jako je manipulace s větvemi (přepínání a vytváření) a obnovení souborů v pracovním adresáři („git checkout $commit — $filename“) nebo přímo v staging area („—staging“, což nemá ekvivalent v „git checkout“). Je dobré poznamenat, že na rozdíl od „git checkout“, „git restore“ odstraňuje neošetřované soubory z obnovovaných adresářů („—no-overlay“ je výchozí).
  • Byla přidána možnost „git merge —quit“, která, podobně jako „—abort“, zastaví proces sloučení větví, ale ponechává pracovní adresář nedotčený. Tato možnost se může ukázat jako užitečná, pokud některé ze změn provedených během ručního sloučení je lepší zformulovat jako samostatný commit.
  • Příkazy „git clone“, „git fetch“ a „git push“ nyní zohledňují existenci commitů v příbuzných repozitářích (alternates);
  • Byly přidány možnosti „git blame —ignore-rev“ a „—ignore-revs-file“, které umožňují přeskočit commity, ve kterých byly provedeny nevýznamné úpravy (například opravy formátování);
  • Byla přidána možnost „git cherry-pick —skip“ pro přeskočení konfliktního commitu (zapamatovatelný ekvivalent sekvence „git reset && git cherry-pick —continue“);
  • Bylo přidáno nastavení status.aheadBehind, které trvale fixuje možnost „git status —[no-]ahead-behind“;
  • Od tohoto vydání „git log“ výchozí chování zohledňuje změny provedené mailmap, podobně jako to, co již probíhá v git shortlog;
  • Byla výrazně zrychlena operace aktualizace experimentálního cache grafu commitů (core.commitGraph), zavedeného ve verzi 2.18. Také byla zrychlena git for-each-ref při použití více šablon a bylo zkráceno množství volání auto-gc v „git fetch —multiple“;
  • „git branch —list“ nyní vždy zobrazuje detached HEAD na začátku seznamu bez ohledu na lokalitu.

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