Mõni päev tagasi teatati Git 2.3 uue versiooni ilmumisest . See on üks populaarsemaid, usaldusväärsemaid ja suure jõudlusega versioonikontrollisüsteeme, mis pakub paindlikke mittelineaarseid arendustööriistu, mis põhinevad hargnemisel ja ühendamisel.
Võrreldes eelmise versiooniga võeti uues versioonis vastu 679 muudatust. Selle ettevalmistamisel osales 85 arendajat , kellest 23 osalesid arenduses esimest korda.
Git 2.31 Peamised uued funktsioonid
Git 2.31 uues versioonis on lisatud käsk "git maintenance" , mis võimaldab perioodilist hooldust süsteemides, mis ei toeta croni . Näiteks saate selle uue käsu abil ajastada repositooriumi pakkimisprotsessi perioodiliseks alustamiseks, mis välistab vajaduse oodata repositooriumi lukustuse lõppu, kui pakkimine toimub automaatselt pärast mitme käsu täitmist.
Teine märkimisväärne muudatus on paketifailide kettal pöördindeksi (revindex) hoidmise toe lisamine. Git salvestab kõik andmed objektidena, mis omakorda hoitakse eraldi failides. Repositooriumiga töötamise efektiivsuse parandamiseks on need objektid omakorda korraldatud paketifailideks, kus teave esitatakse üksteisele järgnevate objektide vooguna.
Iga paketiarhiivi jaoks luuakse indeksfail (.idx), mis võimaldab objekti identifikaatorit kasutada paketiarhiivi nihke kiireks määramiseks, kuhu objekt on salvestatud. Git 2.31-s pakutud pöördindeks (.rev) on suunatud objekti identifikaatori määramise protsessi optimeerimisele objekti asukoha teabe põhjal paketiarhiivis.
Varem teostati see teisendamine paketifaili parsimise ajal lennult ja salvestati ainult mällu, mis ei võimaldanud nende indeksite taaskasutamist ja nõudis indeksi iga kord genereerimist. Indeksi koostamise toiming taandub objektide positsioonipaaride massiivi loomisele ja nende positsiooni järgi sorteerimisele, mis võib suurte paketifailide puhul olla väga aeganõudev.
Lisaks näeme, et on lisatud jõudluse optimeerimised, mis põhinevad commit graafiku failivormingu välimusel , mida kasutatakse commit'ide teabele juurdepääsu optimeerimiseks, ning uued andmed genereeritud commit'ide arvu kohta, mida saab kasutada commit'idega tehtavate täiendavate toimingute kiirendamiseks.
Lisaks lisati võimalus uutes repositooriumides vaikimisi haru nime üle kirjutada (säte init.defaultBranch). Välistele repositooriumidele ligipääsemisel proovib Git kontrollida haru, millele HEAD osutab; see tähendab, et kui väline server kasutab vaikimisi haru "main", siis operatsioon "git clone" proovib leida haru "main" lokaalselt.
Muud märkimisväärsed muudatused hõlmavad järgmist:
- Valik „–disk-use“ lisatud käsule "git rev-list" objektide suuruse kokkuvõtte kuvamiseks.
- Tühistatud regulaaravaldiste teegi PCRE1 tugi on eemaldatud.
- Pakutakse võimalust kiirklahvide kasutamist jõuliselt keelata, toimides räsimisalgoritmist sõltumatult. Keeld on lubatud, määrates parameetrile core.abbrev väärtuse "ei".
- Suhteliste või absoluutsete teede väljundi selgesõnaliseks määratlemiseks on käsule "git rev-parse" lisatud valik "–path-format".
- Bashi automaatse täitmise skriptid muudavad kohandatud "git" alamkäsude täitmise reeglite lisamise lihtsaks.
- Lisati käsku "git bundle" võimalus "–stdin", et lugeda linke standardsest sisendvoost.
- Käskudele "git range-diff" on lisatud "ainult vasakule" ja "ainult paremale" valikud, et kuvada võrreldava vahemiku ainult üks külg.
- Lisatud valik "–liiguta-juurde = »Katkestatud seansi jätkamiseks suvaliselt teelt käsule« git difftool ».
- Käitumisjuhend (Code of Conduct), mis määratleb arendajate vaheliste konfliktide lahendamise aluspõhimõtted, on uuendatud versioonile 2.0 (varem kasutati versiooni 1.4).
Lõpuks, kui soovite selle kohta rohkem teada saada , saate tutvuda järgmise lingiga.