Git 2.31 je sada dostupan i dolazi s održavanjem gita

Prije nekoliko dana najavljeno je izlazak nove verzije Gita 2.3 , jednog od najpopularnijih, najpouzdanijih i visokoučinkovitih sistema za kontrolu verzija, koji pruža fleksibilne nelinearne alate za razvoj zasnovane na grananju i spajanju.

U poređenju sa prethodnom verzijom, u novoj verziji, pripremljenoj uz učešće 85 programera , usvojeno je 679 promjena , od kojih je 23 prvi put učestvovalo u razvoju.

Git 2.31 ističe se

Ova nova verzija Gita 2.31 sadrži dodatak naredbe "git maintenance" , koja omogućava periodično održavanje na sistemima koji ne podržavaju cron . Na primjer, pomoću ove nove naredbe možete zakazati periodično pokretanje procesa pakovanja repozitorija, eliminirajući potrebu za čekanjem da se zaključavanje repozitorija završi kada se pakovanje izvršava automatski nakon izvršenja više naredbi.

Još jedna značajna promjena je dodavanje podrške za održavanje obrnutog indeksa na disku (revindex) za datoteke paketa. Git pohranjuje sve podatke kao objekte, koji se čuvaju u odvojenim datotekama. Kako bi se poboljšala efikasnost rada s repozitorijem, ovi objekti su dalje organizirani u datoteke paketa, gdje su informacije predstavljene kao tok objekata koji slijede jedan za drugim.

Za svaku arhivu paketa kreira se indeksna datoteka (.idx) koja omogućava da se identifikator objekta koristi za brzo određivanje pomaka unutar arhive paketa gdje je objekt pohranjen. Obrnuti indeks (.rev) predložen u Gitu 2.31 ima za cilj optimizaciju procesa određivanja identifikatora objekta iz informacija o lokaciji objekta unutar arhive paketa.

Ranije se ova konverzija izvodila u hodu tokom parsiranja datoteke paketa i pohranjivala se samo u memoriju, što nije omogućavalo ponovnu upotrebu ovih indeksa i zahtijevalo je generiranje indeksa svaki put. Operacija izgradnje indeksa svodi se na konstruiranje niza parova pozicija objekata i njihovo sortiranje po poziciji, što može biti vrlo dugotrajno za velike datoteke paketa.

Nadalje, možemo primijetiti da su dodane optimizacije performansi zasnovane na izgledu formata datoteke grafa commit-a , koji se koristi za optimizaciju pristupa informacijama o commit-ovima, te novi podaci o broju generiranih commit-ova, koji se mogu koristiti za ubrzavanje dodatnih operacija s commit-ovima.

Pored toga, dodana je mogućnost prepisivanja zadanog naziva grane u novim repozitorijima (postavka init.defaultBranch). Prilikom pristupanja vanjskim repozitorijima, Git pokušava provjeriti granu na koju HEAD pokazuje; to jest, ako vanjski server koristi granu "main" prema zadanim postavkama, tada će operacija "git clone" pokušati pronaći "main" lokalno.

Druge značajne promjene uključuju:

  • Opcija "–disk-use" dodano naredbi "git rev-list" za prikaz sažetka veličine predmeta.
  • Uklonjena je podrška za zastarjelu biblioteku regularnih izraza PCRE1.
  • Pružena mogućnost prisilne zabrane upotrebe prečica, djelujući neovisno o algoritmu za raspršivanje. Zabrana je omogućena dodjeljivanjem vrijednosti "ne" parametru core.abbrev.
  • Opcija „–path-format“ dodana je naredbi „git rev-parse“ da bi eksplicitno definirala izlaz relativnih ili apsolutnih staza.
  • Bashove skripte za automatsko dovršavanje olakšavaju dodavanje pravila dovršenja za prilagođene "git" potkomande.
  • Dodana je opcija „–stdin“ naredbi „git bundle“ za čitanje veza iz standardnog ulaznog toka.
  • Opcije „–lijevo“ i „–desno“ dodane su naredbi „git range-diff“ kako bi se prikazala samo jedna strana upoređenog raspona.
  • Dodana opcija "–skip-to = »Naredbi« git difftool »za nastavak prekida sesije iz proizvoljne staze.
  • Kodeks ponašanja (Code of Conduct), koji definira osnovne principe za rješavanje sukoba između programera, ažuriran je na verziju 2.0 (ranije je korištena verzija 1.4).

Konačno, ako želite saznati više o tome , možete pogledati sljedeći link.


Dodaj kao preferirani izvor na Googleu