Git 2.35 allika haldussĂŒsteemi vabastamine

PĂ€rast kahte kuud arendust on avaldatud hajustatud versioonihaldussĂŒsteemi Git 2.35 vĂ€ljaanne. Git on ĂŒks populaarsemaid, usaldusvÀÀrsemaid ja suure jĂ”udlusega versioonihaldussĂŒsteeme, mis pakub paindlikke mitte-lineaarse arenduse vahendeid, mis pĂ”hinevad harude ja harude ĂŒhendamise peal. Ajaloo terviklikkuse ja muudatustele «tagasiulatuvalt» vastupidavuse tagamiseks kasutatakse kogu varasema ajaloo varjatud rĂ€simist igas pĂŒhenduses, samuti on vĂ”imalik arendajate digiallkirjadega kinnitada eraldi silte ja pĂŒhendusi.

Uue versiooni vÔrreldes eelmise vÀljaande suudeti vastu vÔtta 494 muudatust, mille koostamisel osales 93 arendajat, kellest 35 osales arendustegevuses esmakordselt. Peamised uuendused:

  • SSH-vĂ”tmete kasutamisvĂ”imalusi on laiendatud Git-objektide digitaalallkirjastamise kinnitamiseks. Mitme vĂ”tme kehtivuse ajavahemiku eristamiseks lisati OpenSSH-dokumendi „valid-before” ja „valid-after” tugi, millega saab tagada allkirjade korraliku toimimise pĂ€rast ĂŒhe arendaja vĂ”tme vahetamist. Varem oli probleem vanade ja uute vĂ”tmete allkirjade eristamises — vana vĂ”tme kustutamisel ei olnud vĂ”imalik kontrollida selle abil tehtud allkirju ja kui seda mitte eemaldada, jĂ€i vĂ”imalus uute allkirjade loomiseks vana vĂ”tmega, millele oli asendatud uus vĂ”tme. Valid-before ja valid-after abil saab vĂ”tmete kehtivusala jagada allkirja loomise aja alusel.
  • Merge.conflictStyle seadistuses, mis vĂ”imaldab valida teavet konfliktide lahendamise vormimisreĆŸiimi, on nĂŒĂŒd saadaval tugi „zdiff3” reĆŸiimile, mis viib kĂ”ik tĂŒĂŒpilised ridade konfliktide piirkonna alguses vĂ”i lĂ”pus vĂ€lja, vĂ”imaldades saavutada kompaktsema teabe esitamise.
  • Git stash kĂ€sku on lisatud reĆŸiim "--staged", mis vĂ”imaldab peita ainult indekseeritud muutused, nĂ€iteks olukordades, kus on vajalik ajutiselt kĂ”rvale jĂ€tta osa keerukatest muudatustest, et esmalt lisada juba valmiskujul olev osa ning teistega tegeleda hiljem. See reĆŸiim sarnaneb kĂ€suga "git commit", mis salvestab ainult indekseeritud muudatused, kuid uue commit'i loomise asemel salvestatakse "git stash --staged" tulemused ajutisse stash alasse. Kui muudatused hiljem vajalikuks osutuvad, saab need taastada kĂ€suga "git stash pop".
  • KĂ€sku «git log» on lisatud uus formaadispecifikaator «—format=%(describe)», mis vĂ”imaldab ĂŒhendada «git log» vĂ€ljundi ja kĂ€su «git describe» tulemuse. «Git describe» parameetrid mÀÀratakse otse spetsiifikaatoris («—format=%(describe:match=,exclude=)»), kus saab samuti lisada lĂŒhendatud silte («—format=%(describe:tags=)») ja kohandada objekti ID-de heksakoodide arvu («—format=%(describe:abbrev=)»). NĂ€iteks 8 viimase commit'i vĂ€ljastamiseks, mille silte ei ole seotud vĂ€ljaandekandidaadiga, ja 8-kohaliste identifikaatorite mÀÀramiseks saab kasutada kĂ€sku: $ git log -8 —format='%(describe:exclude=*-rc*,abbrev=13)' v2.34.1-646-gaf4e5f569bc89 v2.34.1-644-g0330edb239c24 v2.33.1-641-g15f002812f858 v2.34.1-643-g2b95d94b056ab v2.34.1-642-gb56bd95bbc8f7 v2.34.1-203-gffb9f2980902d v2.34.1-640-gdf3c41adeb212 v2.34.1-639-g36b65715a4132
  • Kasutaja mÀÀrangu user.signingKey seade toetab uusi vĂ”tme tĂŒĂŒpe, mitte piiratud «ssh-» tĂŒĂŒbi ja vĂ”tme tĂ€ispika failitee mÀÀramisega. Alternatiivsed tĂŒĂŒbid mÀÀratakse prefiksi «key::» abil, nĂ€iteks «key::ecdsa-sha2-nistp256» ECDSA vĂ”tmete jaoks.
  • MĂ€rgatavalt on paranenud muudatuste nimekirja genereerimise kiirus reĆŸiimis „—histogram” ning ka valikuga „—color-moved-ws”, mis reguleerib ruumide vĂ€rvilisest diff'ist esiletĂ”stmist.
  • KĂ€skluses „git jump”, mis on mĂ”eldud Vim'ile teabe edastamiseks tĂ€psete ĂŒleminekute kohta soovitud asukohas failis konfliktide lahendamisel, muudatuste vaatamisel vĂ”i otsingu tegemisel, on lisatud vĂ”imalus kitsendada hĂ”lmatud ĂŒhinemis-konflikte. NĂ€iteks, et piirata toimingud ainult kataloogiga „foo”, vĂ”ib kasutada kĂ€sku „git jump merge — foo”, ja et vĂ€listada töötlemisest kataloog „Documentation”, vĂ”ib kasutada kĂ€sku „git jump merge — ':^Documentation'”.
  • Tehtud töö „size_t” tĂŒĂŒbi standardiseerimise nimel, selle asemel et kasutada „unsigned long” objekte suuruse esindamiseks. See vĂ”imaldas rakendada filtrite „clean” ja „smudge” kasutamist failidega, mis on suuremad kui 4 GB kĂ”ikidel platvormidel, sealhulgas LLP64 andmemudeli platvormidel, kus „unsigned long” tĂŒĂŒp on piiratud 4 baitiga.
  • Meeskonda „git am“ on lisatud valik „—empty=(stop|drop|keep)“, mis vĂ”imaldab tĂ€htsusetute ega patch'ide sisaldavate e-kirjade töötlemisel valida kĂ€itumist. VÀÀrtus „stop“ lĂ”petab kogu patch'e rakendamise operatsiooni, „drop“ ignoreerib tĂŒhja patch'i, „keep“ loob tĂŒhja kommita.
  • KĂ€skudele „git reset“, „git diff“, „git blame“, „git fetch“, „git pull“ ja „git ls-files“ on lisatud toetus osalistele indeksitele (sparse index), mis aitavad parandada jĂ”udlust ja sÀÀsta ruumi ladustamises, kus tehakse osalist kloonimist (sparse-checkout).
  • KĂ€sk „git sparse-checkout init“ on vĂ€lja kuulutatud vananenuks, selle asemel tuleks kasutada „git sparse-checkout set“.
  • Lisatud on uue „reftable“ tagasiside algeline teostus, mis salvestab linke, nagu harud ja sildid, hoidlas. Uus tagasiside kasutab plokkhoidlat, mida rakendab projekt JGit ja mis on optimeeritud vĂ€ga suure arvu linkide salvestamiseks. Praegu ei ole tagasiside integreeritud viidete sĂŒsteemiga (refs) ja see pole veel praktiliseks kasutamiseks valmis.
  • KĂ€sku „git grep“ vĂ€rvipalett on kohandatud GNU grep utiliidiga.

Allikas: opennet.ru

Osta usaldusvÀÀrne veebihosting DDoS kaitsega, VPS VDS serverid đŸ”„ Osta usaldusvÀÀrne veebihosting DDoS kaitsega, VPS VDS serverid | ProHoster