Sgaoileadh smachd stòr Git 2.37

Tha an sgaoileadh Git 2.37 den t-siostam smachd stòr sgaoilte air a thoirt a-steach. Is e Git aon de na siostaman smachd dreach as mòr-chòrdte, earbsach agus àrd-choileanadh a bheir seachad innealan leasachaidh sùbailte neo-loidhneach stèidhichte air meuran meurach agus aonachadh. Gus dèanamh cinnteach à ionracas na h-eachdraidh agus an aghaidh atharrachaidhean ath-ghnìomhach, thathas a’ cleachdadh hashing den eachdraidh gu lèir roimhe anns gach gealltanas, tha e comasach cuideachd tagaichean fa leth a dhearbhadh agus geallaidhean le ainmean didseatach bhon luchd-leasachaidh.

An coimeas ris an fhoillseachadh roimhe, chaidh gabhail ri 395 atharrachaidhean anns an dreach ùr, a chaidh ullachadh le com-pàirt 75 luchd-leasachaidh, agus ghabh 20 dhiubh sin pàirt san leasachadh airson a’ chiad uair. Prìomh innleachdan:

  • Tha uidheamachd clàran-amais pàirt (clàr-amais gann), a’ còmhdach dìreach pàirt den stòr, air a thoirt gu ullachadh airson a chleachdadh fad is farsaing. Faodaidh clàran-amais pàirteach coileanadh a leasachadh agus àite a shàbhaladh ann an stòran a bhios a’ coileanadh obair clonaidh pàirteach (seic gann) no a bhios ag obair air leth-bhreac den stòr. Anns an fhoillseachadh ùr, chaidh obair a chrìochnachadh gus clàran-amais pàirt fhilleadh a-steach do na h-òrdughan “git show”, “git sparse-checkout”, agus “git stash”. Tha am buannachd coileanaidh as ainmeil bho bhith a’ cleachdadh clàran-amais pàirteach anns an àithne “git stash”, a tha suas ri 80% nas luaithe ann an cuid de shuidheachaidhean.
  • Chaidh uidheamachd ùr “pasganan cruft” a chuir an gnìomh airson a bhith a’ pacadh stuthan nach gabh ruigsinn air nach eilear a’ toirt iomradh san stòr (chan eilear a’ toirt iomradh air geugan no tagaichean). Bidh an neach-cruinneachaidh sgudail a’ toirt air falbh nithean nach gabh ruighinn, ach fuirichidh iad san stòr airson ùine sònraichte mus tèid an toirt air falbh gus suidheachadh rèis a sheachnadh. Gus sùil a chumail air an ùine de stuthan neo-ruigsinneach, feumar bileagan a cheangal riutha le ùine atharrachaidh nithean coltach ris, nach leig leis an stòradh ann an aon fhaidhle pacaid, anns a bheil ùine atharrachaidh cumanta aig a h-uile nì. Roimhe sin, le bhith a’ sàbhaladh gach nì ann am faidhle air leth dh’ adhbhraich sin duilgheadasan nuair a bha àireamh mhòr de nithean ùra, nach gabhadh faighinn a-steach, nach deach an toirt às fhathast. Leigidh an uidheamachd “pasgan cruft” a tha san amharc dhut a h-uile nì nach gabh ruighinn a stòradh ann an aon fhaidhle pacaid, agus an dàta mu àm atharrachaidh gach nì a nochdadh ann an clàr air leth air a stòradh ann am faidhle leis an leudachadh “.mtimes”.
  • Airson Windows agus macOS, tha uidheamachd stèidhichte ann airson sùil a chumail air atharrachaidhean san t-siostam faidhle, a tha a’ cur às don fheum air an eòlaire obrach gu lèir àireamhachadh nuair a bhios tu a’ coileanadh gnìomhachd leithid “inbhe git”. Roimhe sin, gus sùil a chumail air atharrachaidhean tro dubhan, dh’ fhaodadh goireasan lorg atharrachadh siostam faidhle taobh a-muigh, leithid Watchman, a bhith ceangailte, ach dh’ fheumadh seo prògraman agus rèiteachadh a bharrachd a chuir a-steach. Tha an gnìomh seo a-nis air a thogail a-steach agus faodar a chomasachadh leis an àithne “git config core.fsmonitor true”.
  • Cha robh an àithne “git sparse-checkout” a’ moladh taic airson roghainn eile seach a’ mhodh “-cone” airson teamplaidean a mhìneachadh airson clonadh pàirteach, a leigeas, nuair a thathar a’ dearbhadh a’ phàirt den stòr-tasgaidh a tha fo ghnìomhachd a’ chlàir, liosta a dhèanamh de fhaidhlichean fa-leth a’ cleachdadh an " .gitnore" co-chòrdadh, nach eil a 'ceadachadh cleachdadh airson clàran-amais pàirt optimization.
  • Sùbailteachd nas fheàrr ann a bhith a’ rèiteachadh a’ ghairm fsync () gus atharrachaidhean air diosc a shruthladh. Chaidh taic airson an ro-innleachd sioncronaidh “batch” a chur ris a’ pharameter “core.fsyncMethod”, a luathaicheas obair nuair a bhios tu a’ sgrìobhadh àireamh mhòr de fhaidhlichean fa-leth le bhith a’ cruinneachadh atharrachaidhean san tasgadan sgrìobhaidh air ais air a sgaoileadh le aon ghairm fsync(). Chaidh deuchainn a lean gu faidhlichean 500 a chuir ris an àithne git add a chrìochnachadh ann an 0.15 diogan leis a’ mhodh ùr air a chomasachadh, fhad ‘s a thug e 1.88 diogan airson gach faidhle le fsync (), agus 0.06 diogan gun a bhith a’ cleachdadh fsync .
  • Tha roghainn " --since-as-filter=X" aig òrdughan traversal mar "git log" agus "git rev-list" gus fiosrachadh a shìoladh a-mach mu gheallaidhean nas sine na "X". Eu-coltach ris an roghainn “-since”, tha an àithne ùr air a chuir an gnìomh mar shìoltachan nach stad an rannsachadh às deidh a’ chiad ghealladh nas sine na an ùine ainmichte.
  • Anns an àithne “git remote", nuair a thathar a’ sònrachadh a’ bhratach “-v”, tha fiosrachadh mu dheidhinn clones pàirt den stòr air a thoirt seachad.
  • Chaidh suidheachadh "transfer.credentialsInUrl" a chur ris, a dh'fhaodas na luachan "rabhadh", "bàsachadh" agus "ceadaich". Ma tha e air a shònrachadh ann an "iomallach. .url" ann an teacsa shoilleir, fàilligidh oidhirp air gnìomh “fetch” no “putadh” a dhèanamh ma tha an suidheachadh “transfer.credentialsInUrl” air a shuidheachadh gu “bàs”, no rabhadh ma thèid “rabhadh” a dhèanamh.
  • Gu gnàthach, thèid buileachadh ùr den mhodh eadar-ghnìomhach den àithne “git add -i”, air ath-sgrìobhadh bho Perl gu C, a chleachdadh.

Source: fosgailtenet.ru

Cuir beachd ann