VĂ€lja on antud Git 2.36 lĂ€htekoodi haldamise sĂŒsteem

PĂ€rast kolme kuu arengut on avalikustatud jaotatud allikakoodihalduse sĂŒsteemi Git 2.36 versioon. Git on ĂŒks populaarsemaid, usaldusvÀÀrsemaid ja kĂ”rge jĂ”udlusega versioonihaldussĂŒsteeme, mis pakub paindlikke tööriistu mittelineaarseks arenduseks, tuginedes harude jagamisele ja sulandumisele. Ajaloo terviklikkuse ja tagasipööramise muudatuste suhtes vastupidavuse tagamiseks kasutatakse iga commit'i juures kogu varasema ajaloo vaiku hash'imist ning on vĂ”imalik kinnitada digitaalsete allkirjadega arendajate eraldi sildid ja commit'id.

Eelmise vÀljaande vÔrreldes on uude versioonis vastu vÔetud 717 muudatust, mille on ette valmistanud 96 arendajat, kellest 26 osaleb arenduses esmakordselt. Peamised uuendused:

  • KĂ€skudesse «git log» ja «git show» on lisatud valik «—remerge-diff», mis vĂ”imaldab nĂ€idata erinevusi ĂŒhise sulandumise tulemuse ja tegelike andmete vahel, mis on esitatud commit'is pĂ€rast «merge» kĂ€su töötlemist, mis vĂ”imaldab selgelt hinnata muutusi, mis on tehtud konfliktide lahendamise tulemusena. Tavaline kĂ€sk «git show» eraldab erinevad konfliktide lahendused vahemaa kaudu, mis raskendab muudatuste mĂ”istmist. NĂ€iteks alloleval ekraanipildil nĂ€itab rida «+/-» ilma vahemargina viimast konflikti lahendust, mis on seotud esimeses harus sha1 ĂŒmbernimetamisega oid kommentaaris, ja «+/-» koos vahemargina on esialgne konflikti lahendus, mille pĂ”hjustas teises harus funktsioonis dwim_ref() tĂ€iendava argumendi ilmumine.
    VĂ€lja on antud Git 2.36 lĂ€htekoodi haldamise sĂŒsteem

    Optsi «—remerge-diff» kasutamisel ei eristata konfliktilahenduste erinevusi iga vanema haru kohta, vaid nĂ€idatakse ĂŒldised erinevused konflikti sisaldava faili ja faili vahel, kus konfliktid on lahendatud.

    VĂ€lja on antud Git 2.36 lĂ€htekoodi haldamise sĂŒsteem
  • Ketta vahefailide lĂ€htestamise kĂ€itumise seadistamise paindlikkust on suurendatud fsync() funktsiooni kutsumise kaudu. Varasemalt saadaval olnud parameeter core.fsyncObjectFiles on jagatud kaheks konfiguratsioonimuutujaks core.fsync ja core.fsyncMethod, mis annavad vĂ”imaluse rakendada fsync mitte ainult objektifailidele (.git/objects), vaid ka muudele git struktuuridele, nagu lingid (.git/refs), reflog ja pakifailid.

    Muutuja core.fsync vĂ”imaldab mÀÀrata Git'i sisemiste struktuuride nimekirja, mille puhul kutsutakse pĂ€rast kirjutamistehet tĂ€iendavalt vĂ€lja fsync. Muutuja core.fsyncMethod vĂ”imaldab valida vahemĂ€lu tĂŒhjendamise meetodi, nĂ€iteks vĂ”ib valida fsync sama nime saanud sĂŒsteemi kutsumise jaoks vĂ”i nĂ€idata writeout-only, et kasutada edasi lĂŒkatud kirjutamist (pagecache writeback).

  • Vulnerabilities, mis manipuleerivad teiste kasutajate .git kataloogide asendustega jagatud diskide puhul, kaitsmiseks on tugevdatud repositoriumi omaniku kontrolli. NĂŒĂŒd on git'i kĂ€skude tĂ€itmine lubatud ainult oma «.git» kataloogides. Kui repositoriumi kataloog kuulub teisele kasutajale, vĂ€ljastatakse vaikimisi viga. Seda kĂ€itumist saab keelata seadega safe.directory.
  • KĂ€sku «git cat-file», mis on mĂ”eldud Git'i objektide algse sisu vĂ€ljatrĂŒkkimiseks, on lisatud valik «—batch-command», mis tĂ€iendab varasemat «—batch» ja «—batch-check» kĂ€sku, vĂ”imaldades adaptiivset vĂ€ljundi tĂŒĂŒbi valikut, mĂ€rkides «contents » sisu vĂ€ljatrĂŒkkimiseks vĂ”i «info » objekti teabe vĂ€ljatrĂŒkkimiseks. Lisaks toetatakse kĂ€sku «flush» vĂ€ljundpuhvri tĂŒhjendamiseks.
  • KĂ€sku «git ls-tree», mis on mĂ”eldud objektipuude sisu loendi genereerimiseks, on lisatud valik «—oid-only» («—object-only»), sarnanedes «—name-only»-le, mis vĂ€ljastab ainult objektide identifikaatorid skriptide vĂ€ljakutsumise lihtsustamiseks. Samuti on rakendatud valik «—format», mis vĂ”imaldab mÀÀratleda oma vĂ€ljundi vormingu, kombineerides teavet reĆŸiimi, tĂŒĂŒbi, nime ja suuruse kohta.
  • KĂ€sku «git bisect run» on rakendatud teavet skripti tĂ€itmise faili jĂ€rgi mÀÀratlemise kohta ja sel juhul veakoode 126 vĂ”i 127 vĂ€ljundiks (varem, kui skripti ei olnud vĂ”imalik kĂ€ivitada, olid kĂ”ik ĂŒlevaatused mĂ€rgitud probleemide olemasoluks).
  • KĂ€sku «git fetch» on lisatud valik «—refetch» kĂ”igi objektide tĂ”mbamiseks, teavitamata teist poolt juba kohalike sĂŒsteemide sisu kohta. Selline kĂ€itumine vĂ”ib olla kasulik seisundi taastamiseks krahhide jĂ€rel, kui ei ole kindel kohalike andmete terviklikkuses.
  • Komanditesse «git update-index», «git checkout-index», «git read-tree» ja «git clean» on lisatud toetus osalistele indeksitele (sparse index), mis vĂ”imaldavad parandada jĂ”udlust ja sÀÀsta ruumi repositooriumides, kus teostatakse osalist kloonimist (sparse-checkout).
  • Muudetud on kĂ€sku «git clone —filter=
 —recurse-submodules», mis nĂŒĂŒd viib osalise kloonimise alamsubmodulites (varem rakendati filtrit ainult pĂ”hiaine jaoks ning alamsubmodulid klooniti tĂ€ielikult, arvestamata filtrit).
  • KĂ€sku «git bundle» on lisatud tugi filtrite mÀÀratlemiseks sisu valikulise paigutamise jaoks sarnaselt osaliste kloonimise operatsioonidele.
  • KĂ€sku «git branch» on lisatud valik «—recurse-submodules» alamsubmodulite rekursiivseks lĂ€bimiseks.
  • Userdiff'isse on pakutud uus töötleja Kotlin'i keele jaoks.

Allikas: opennet.ru

Osta usaldusvÀÀrne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid đŸ”„ Osta usaldusvÀÀrne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid | ProHoster