Rhyddhad rheoli ffynhonnell Git 2.35

Ar ôl dau fis o ddatblygiad, mae'r system rheoli ffynhonnell ddosbarthedig Git 2.35 wedi'i ryddhau. Git yw un o'r systemau rheoli fersiynau mwyaf poblogaidd, dibynadwy a pherfformiad uchel, gan ddarparu offer datblygu aflinol hyblyg yn seiliedig ar ganghennu ac uno. Er mwyn sicrhau cywirdeb yr hanes a gwrthwynebiad i newidiadau ôl-weithredol, defnyddir stwnsh ymhlyg o'r holl hanes blaenorol ym mhob ymrwymiad; mae hefyd yn bosibl ardystio tagiau unigol ac ymrwymo gyda llofnodion digidol y datblygwyr.

O'i gymharu â'r datganiad blaenorol, roedd y fersiwn newydd yn cynnwys 494 o newidiadau, a baratowyd gyda chyfranogiad 93 o ddatblygwyr, a chymerodd 35 ran mewn datblygiad am y tro cyntaf. Prif arloesiadau:

  • Mae'r posibiliadau ar gyfer defnyddio allweddi SSH i lofnodi gwrthrychau Git yn ddigidol wedi'u hehangu. Er mwyn cyfyngu ar gyfnod dilysrwydd sawl allwedd, mae cefnogaeth i gyfarwyddebau OpenSSH “dilys-cyn” a “dilys ar ôl” wedi'i ychwanegu, y gallwch chi sicrhau gwaith cywir gyda llofnodion ar ôl i'r allwedd gael ei chylchdroi gan un o'r datblygwyr. Cyn hyn, roedd problem gyda gwahanu llofnodion gan yr hen a'r allwedd newydd - os byddwch yn dileu'r hen allwedd, bydd yn amhosibl gwirio'r llofnodion a wnaed ag ef, ac os byddwch yn ei adael, bydd yn bosibl o hyd. creu llofnodion newydd gyda'r hen allwedd, sydd eisoes wedi'i disodli gan allwedd arall. Gan ddefnyddio dilys-cyn ac yn ddilys-ar ôl gallwch wahanu cwmpas yr allweddi yn seiliedig ar yr amser y cafodd y llofnod ei greu.
  • Yn y gosodiad merge.conflictStyle, sy'n eich galluogi i ddewis y modd ar gyfer arddangos gwybodaeth am wrthdaro yn ystod uno, mae cefnogaeth ar gyfer y modd "zdiff3" wedi ymddangos, sy'n symud yr holl linellau safonol a nodir ar ddechrau neu ddiwedd y gwrthdaro y tu allan i'r gwrthdaro ardal, sy'n caniatáu cyflwyniad mwy cryno o wybodaeth.
  • Mae'r modd "--stage" wedi'i ychwanegu at y gorchymyn "git stash", sy'n eich galluogi i guddio dim ond newidiadau a ychwanegwyd at y mynegai, er enghraifft mewn sefyllfa pan fydd angen i chi ohirio rhai o'r newidiadau cymhleth dros dro er mwyn gwneud hynny yn gyntaf. ychwanegu'r hyn sydd eisoes yn barod a delio â'r gweddill ar ôl ychydig. Mae'r modd yn debyg i'r gorchymyn “git commit”, gan ysgrifennu dim ond y newidiadau a roddir yn y mynegai, ond yn lle creu ymrwymiad newydd yn “git stash —stage”, mae'r canlyniad yn cael ei storio yn yr ardal stash dros dro. Unwaith y bydd angen y newidiadau, gellir eu dychwelyd gyda'r gorchymyn “git stash pop”.
  • Mae manyleb fformat newydd wedi'i ychwanegu at y gorchymyn "git log", "--format=%(describe)", sy'n eich galluogi i gyfuno allbwn "git log" ag allbwn y gorchymyn "git describe". Mae'r paramedrau ar gyfer "git describe" wedi'u pennu'n union y tu mewn i'r manylebwr ("-format=%(disgrifiwch:match= , eithrio = )"), lle gallwch hefyd gynnwys tagiau byrrach ("-format=%(disgrifiwch:tags= )") a ffurfweddu nifer y nodau hecsadegol i adnabod gwrthrychau (“ —format=%(disgrifiwch:abbrev= )")). Er enghraifft, i restru'r 8 ymrwymiad diwethaf nad oes gan eu tagiau dag ymgeisydd rhyddhau, a nodi dynodwyr 8-nod, gallwch ddefnyddio'r gorchymyn: $ git log -8 —format='%(disgrifiwch:exclude=*-rc *,abbrev=13 )' v2.34.1-646-gaf4e5f569bc89 v2.34.1-644-g0330edb239c24 v2.33.1-641-g15f002812f858 v2.34.1b-643d v2b-95 94bd056 bbc2.34.1f642 v56-95-gffb8f7d v2.34.1-203- gdf9c2980902adeb2.34.1 v640-3-g41b212a2.34.1
  • Mae'r gosodiad user.signingKey bellach yn cefnogi mathau newydd o allweddi nad ydynt yn gyfyngedig i'r math “ssh-” ac yn nodi'r llwybr ffeil llawn i'r allwedd. Pennir mathau eraill gan ddefnyddio'r rhagddodiad "key::", er enghraifft "key::ecdsa-sha2-nistp256" ar gyfer bysellau ECDSA.
  • Mae cyflymder cynhyrchu rhestr o newidiadau yn y modd “—histogram”, yn ogystal ag wrth ddefnyddio'r opsiwn “—color-moved-ws”, sy'n rheoli amlygu bylchau mewn gwahaniaeth lliw, wedi'i gynyddu'n amlwg.
  • Mae'r gorchymyn "git jump", a ddefnyddir i roi gwybodaeth i Vim am yr union naid i'r safle a ddymunir mewn ffeil wrth ddosrannu gwrthdaro uno, gwylio diffs, neu berfformio gweithrediad chwilio, yn darparu'r gallu i leihau'r gwrthdaro uno a gwmpesir. Er enghraifft, i gyfyngu gweithrediadau i'r cyfeiriadur "foo" yn unig, gallwch nodi "git jump merge - foo", ac i eithrio'r cyfeiriadur "Dogfennaeth" rhag prosesu - "git jump merge - ':^Documentation'"
  • Mae gwaith wedi'i wneud i safoni'r defnydd o'r math "size_t" yn lle "hir heb ei lofnodi" ar gyfer gwerthoedd sy'n cynrychioli maint gwrthrychau, a oedd yn ei gwneud hi'n bosibl defnyddio hidlwyr "glân" a "smwtsh" gyda ffeiliau mwy na 4 GB ar bob platfform, gan gynnwys llwyfannau gyda model data LLP64 , y math “hir heb ei lofnodi” sydd wedi'i gyfyngu i 4 beit.
  • Mae'r opsiwn "-empty = (stop | drop | keep)" wedi'i ychwanegu at y gorchymyn "git am", sy'n eich galluogi i ddewis yr ymddygiad ar gyfer negeseuon gwag nad ydynt yn cynnwys clytiau wrth ddosrannu clytiau o'r blwch post. Bydd y gwerth “stopio” yn terfynu'r gweithrediad clytio cyfan, bydd “gollwng” yn hepgor darn gwag, a bydd “cadw” yn creu ymrwymiad gwag.
  • Ychwanegwyd cefnogaeth ar gyfer mynegeion rhannol (mynegai gwasgaredig) i'r gorchmynion "git reset", "git diff", "git bai", "git fetch", "git pull" a "git ls-files" i wella perfformiad ac arbed lle yn storfeydd , lle cyflawnir gweithrediadau clonio rhannol (siecio tenau).
  • Mae'r gorchymyn "git sparse-checkout init" wedi'i anghymeradwyo a dylid ei ddisodli gan "git sparse-checkout set".
  • Ychwanegwyd gweithrediad cychwynnol o gefn "reftable" newydd ar gyfer storio cyfeiriadau megis canghennau a thagiau yn yr ystorfa. Mae'r backend newydd yn defnyddio storfa bloc a ddefnyddir gan brosiect JGit ac mae wedi'i optimeiddio ar gyfer storio niferoedd mawr iawn o gyfeiriadau. Nid yw'r backend wedi'i integreiddio â'r system cyfeiriadau eto ac nid yw'n barod i'w ddefnyddio'n ymarferol.
  • Mae palet lliw y gorchymyn "git grep" wedi'i addasu i gyd-fynd â cyfleustodau grep GNU.

Ffynhonnell: opennet.ru

Ychwanegu sylw