Pärast kolme kuu arendustööd on avaldatud hajutatud lähtekoodi haldamise süsteemi Git 2.40 versioon. Git on üks populaarsemaid, usaldusväärsemaid ja kõrge jõudlusega versioonihaldussüsteeme, mis pakub paindlikke vahendeid mittejärgmisel arendamisel, mis põhinevad harude ja ühenduste loomisel. Ajaloo terviklikkuse ja tagasipöördumiste suhtes vastupidavuse tagamiseks kasutatakse varasemate sündmuste mitteavalikku hash'imist iga commit'i korral ning on võimalik ka arendajate digitaalsete allkirjadega tagada üksikute siltide ja commit'ide autentsus.
Võrreldes eelmise versiooniga on uude välja antud 472 muudatust, mille on teinud 88 arendajat, kellest 30 osaleb arenduses esmakordselt. Peamised uuendused:
- Git-jump skripti on lisatud toimetaja Emacsi tugi, lisaks varasemale toetaud toimetajale Vim. Git-jump'i kasutatakse tekstiredaktoris teabe edastamiseks faili positsioonide kohta kiireks navigeerimiseks ja koodi redigeerimisele konkreetsetes kohtades üleminekuks. Näiteks saab git-jump'i kasutada toimetaja vahetamiseks konfliktide lahendamise, erinevuste hindamise ja otsingu teostamise tulemusel saadud ridade vahel (nt «git jump grep foo» ja seejärel kiireks navigeerimiseks kohtade vahel, kus esineb mask «foo»).
- «git cat-file» käsku on täiustatud, et toetada «-s» ja «--batch-check» koos «--use-mailmap» valikute rakendamist objekti suuruse õigeks määramiseks e-posti sidemete asendamise arvestamisega, mis on määratud mailmap failis (varem mõjutas «--use-mailmap» vaid sisu väljundit, kuid ei arvestanud, et vanad ja asendatud nimi/e-posti paarid võivad olla erineva suurusega).
- Käsku «git check-attr» on lisatud valik «--source», et valida puu, kus asub vajalik fail «.gitattributes», mida kasutatakse aktiivsete atribuutide määramiseks juhul, kui repositories on mitu «.gitattributes» faili.
- Käsku «git bisect» on ümber kirjutatud C keeles ja integreeritud git'i põhitegevusfaili (varem oli käsk teostatud Shell-skripti kujul).
- Vana Shell'ile kirjutatud «git add --interactive» käsk on eemaldatud (git 2.26-s pakuti välja C keeles sisseehitatud versioon, kuid vana versioon Shellis jäi kättesaadavaks ja reguleeritavaks seaded add.interactive.useBuiltin kaudu).
- Käsku «git merge-tree» on lisatud valik ‘--merge-base’.
- Käsku «git range-diff» on lisatud valik «--abbrev=».
- Interaktiivse rebases käsu reeglistiku toimetaja on võimaldanud üle kirjutada GIT_SEQUENCE_EDITOR muutuja seadistamise abil «git var» käsuga, sarnaselt «git var GIT_EDITOR'ile».
- Kasutajakontode alam-süsteemi on lisatud toetust ajaliselt piiratud paroolidele.
- Bash'i sisendautotäiendamise skriptides on rakendatud režiim, kus suurust ei arvestata.
Allikas: opennet.ru
