Git 2.37 je že izšel in to so njegove novice

Začetek nova različica Git 2.37, ki je ena izmed najbolj priljubljeni sistemi za nadzor različic, zanesljiva in visoko zmogljiva programska oprema, ki ponuja prilagodljiva nelinearna razvojna orodja, ki temeljijo na vilicah in združitvah vilic.

Za zagotovitev celovitosti zgodovine in odpornosti na spremembe se pri vsaki potrditvi uporablja "nazaj" implicitni hash vse prejšnje zgodovine, možno je tudi preverjanje digitalnih podpisov posameznih razvijalcev oznak in potrditev.

Ključne nove funkcije Git 2.37

V primerjavi s prejšnjo različico V novi različici je bilo sprejetih 395 sprememb, pripravilo s sodelovanjem 75 razvijalcev, od tega jih je 20 pri razvoju sodelovalo prvič.

V tej novi različici je poudarjeno, da mehanizem delnih indeksov (sparse index), ki pokriva le del repozitorija, se je bil pripravljen za široko uporabo. Delni indeksi lahko izboljšajo zmogljivost in prihranijo prostor v repozitorijih, ki izvajajo delne operacije kloniranja (redko preverjanje) ali delujejo na nepopolno kopijo skladišča.

Nova različica zaključuje delo integracija delnih indeksov v ukaze "git show", "git sparse-checkout" in "git stash". Najbolj opazno povečanje zmogljivosti pri uporabi delnih indeksov je pri ukazu "git stash", ki je v nekaterih situacijah do 80 % hitrejši.

Druga sprememba, ki izstopa, je ta implementiran je bil nov mehanizem »cruft packs«. za pakiranje nedosegljivih objektov, ki niso navedeni v skladišču (na katere se ne sklicujejo veje ali oznake). Zbiralnik smeti izbriše nedosegljive predmete, vendar ostanejo v skladišču določen čas, preden jih izbrišejo, da se izognejo pogojem dirke. Za sledenje obdobja nedosegljivih objektov je potrebna vezava, označeni so s časom spremembe podobnih objektov, kar ne omogoča, da bi jih shranili v paketno datoteko, v kateri imajo vsi objekti skupen čas spreminjanja.

Če shranite vsak predhodno uporabljen objekt v ločeno datoteko, je datoteka povzročila težave ob prisotnosti velikega števila novih nedosegljivih objektov, še ne. Predlagani mehanizem "cruft packs" omogoča, da se vsi nedosegljivi objekti shranijo v paketno datoteko, podatki o času spreminjanja vsakega predmeta pa se odražajo v ločeni tabeli, shranjeni v datoteki s pripono ".mtimes".

Za Windows in macOS je vgrajen mehanizem za spremljanje sprememb datotečnega sistema, ki odpravlja potrebo po seznamu celotnega delovnega imenika pri izvajanju operacij, kot je "git status". Prej ste lahko za sledenje spremembam prek kavljev povezovali zunanje pripomočke za sledenje spremembam datotečnega sistema, kot je Watchman, vendar je to zahtevalo namestitev dodatnih programov in konfiguracij. Ta funkcija je zdaj vgrajena in jo je mogoče omogočiti z "git config core.fsmonitor true".

Ukaz "git sparse-checkout" je opustil podporo za alternativo načinu "--cone". definicija predloge za delno kloniranje, ki pri definiranju dela repozitorija, ki je predmet operacije kloniranja, omogoča izpis posameznih datotek s sintakso ".gitignore", ki ne dovoljuje uporabe za optimizacijo delnih indeksov.

Od ostalih sprememb ki izstopajo:

  • Izboljšana prilagodljivost pri konfiguriranju klica fsync() za odstranitev sprememb na disk.
  • Parametru "core.fsyncMethod" je bila dodana podpora za strategijo sinhronizacije "batch", ki pospeši delo pri pisanju velikega števila ločenih datotek z nabiranjem sprememb v predpomnilniku za ponovno pisanje, ki jih izprazni en sam klic fsync().
  • Ukazi za prehod, kot sta "git log" in "git rev-list", imajo zdaj možnost "–since-as-filter=X" za filtriranje informacij o potrditvah, starejših od "X".
  • V ukazu "git remote" podajanje zastave "-v" zagotavlja informacije o delnih klonih skladišča.
  • Dodana je nastavitev "transfer.credentialsInUrl", ki lahko sprejme vrednosti "warn", "die" in "allow". Če je parameter »remote. .url" določa poverilnice v golem besedilu, poskus izvajanja operacij "dobi" ali "push" ne bo uspel, če je nastavitev "transfer.credentialsInUrl" nastavljena na "die", ali opozorilo, če je nastavljeno na "warn".
  • Privzeto se uporablja nova implementacija interaktivnega načina ukaza "git add -i", prepisan iz Perl v C.

Končno če vas zanima več o tem, lahko preverite podrobnosti V naslednji povezavi.


Pustite svoj komentar

Vaš e-naslov ne bo objavljen. Obvezna polja so označena z *

*

*

  1. Za podatke odgovoren: Miguel Ángel Gatón
  2. Namen podatkov: Nadzor neželene pošte, upravljanje komentarjev.
  3. Legitimacija: Vaše soglasje
  4. Sporočanje podatkov: Podatki se ne bodo posredovali tretjim osebam, razen po zakonski obveznosti.
  5. Shranjevanje podatkov: Zbirka podatkov, ki jo gosti Occentus Networks (EU)
  6. Pravice: Kadar koli lahko omejite, obnovite in izbrišete svoje podatke.