Sgaoileadh siostam smachd stòr sgaoilte Git 2.26

Ri fhaighinn sgaoileadh siostam smachd stòr sgaoilte Git 2.26.0. Is e Git aon de na siostaman smachd dreach as mòr-chòrdte, earbsach agus àrd-choileanadh, a’ toirt seachad innealan leasachaidh sùbailte neo-loidhneach stèidhichte air branching 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 an luchd-leasachaidh.

An coimeas ris an fhoillseachadh roimhe, bha an dreach ùr a’ toirt a-steach atharrachaidhean 504, air ullachadh le com-pàirt 64 luchd-leasachaidh, agus ghabh 12 dhiubh sin pàirt ann an leasachadh airson a’ chiad uair. prìomh innleachdan:

  • Chaidh tionndadh gu bunaiteach dàrna dreach Pròtacal conaltraidh Git, a thèid a chleachdadh nuair a bhios neach-dèiligidh a’ ceangal air astar ri frithealaiche Git. Tha an dàrna dreach den phròtacal sònraichte airson a bhith a’ toirt seachad comas air geugan agus tagaichean a shìoladh air taobh an fhrithealaiche, a’ tilleadh liosta nas giorra de cheanglaichean don neach-dèiligidh. Roimhe sin, bhiodh òrdugh tarraing sam bith an-còmhnaidh a’ cur an liosta iomlan de thobraichean anns an stòr gu lèir chun neach-dèiligidh, eadhon nuair nach robh an neach-dèiligidh ach ag ùrachadh aon mheur no a’ dèanamh cinnteach gu robh an leth-bhreac aca den stòr ùraichte. Is e ùr-ghnàthachadh sònraichte eile an comas comasan ùra a chur ris a’ phròtacal mar a bhios comas-gnìomh ùr ri fhaighinn san inneal. Tha an còd teachdaiche fhathast co-chòrdail ris an t-seann phròtacal agus faodaidh e cumail ag obair le frithealaichean ùra is sean, a’ tuiteam air ais gu fèin-ghluasadach chun chiad dreach mura h-eil am frithealaiche a’ toirt taic don dàrna fear.
  • Chaidh an roghainn “-show-scope” a chur ris an àithne “git config”, ga dhèanamh nas fhasa an t-àite far a bheil cuid de shuidheachaidhean air am mìneachadh. Leigidh Git leat roghainnean a mhìneachadh ann an diofar àiteachan: anns an stòr (.git/info/config), san eòlaire cleachdaiche (~/.gitconfig), anns an fhaidhle rèiteachaidh air feadh an t-siostaim (/etc/gitconfig), agus tro àithne roghainnean loidhne agus caochladairean àrainneachd. Nuair a thèid “git config” a chuir an gnìomh tha e gu math duilich a thuigsinn càite dìreach an suidheachadh a tha thu ag iarraidh air a mhìneachadh. Gus an duilgheadas seo fhuasgladh, bha an roghainn “--show-origin” ri fhaighinn, ach cha sheall e ach an t-slighe chun fhaidhle anns a bheil an suidheachadh air a mhìneachadh, a tha feumail ma tha thu am beachd am faidhle a dheasachadh, ach cha chuidich e ma tha thu feumaidh tu an luach atharrachadh tro “git config” a’ cleachdadh roghainnean “--system”, “--global” no “-local”. Tha an roghainn ùr “--show-scope” a’ taisbeanadh a’ cho-theacsa mìneachaidh caochlaideach agus faodar a chleachdadh còmhla ri -show-origin:

    $ git --list --show-scope --show-origin
    faidhle cruinne:/home/user/.gitconfig diff.interhunkcontext=1
    faidhle cruinne:/home/user/.gitconfig push.default=current
    […] local file:.git/config branch.master.remote=origin
    faidhle ionadail:.git/config branch.master.merge=refs/heads/master

    $ git config --show-scope --get-regexp 'dif.*'
    cruinne diff.statgraphwidth 35
    ionadail diff.colormoved plain

    $ git config --global --unset diff.statgraphwidth

  • Anns na roghainnean ceangail teisteasan Tha cleachdadh masgaichean ann an URLan ceadaichte. Faodar suidheachaidhean HTTP sam bith agus teisteanasan ann an Git a shuidheachadh an dà chuid airson a h-uile ceangal (http.extraHeader, credential.helper) agus airson ceanglaichean stèidhichte air URL (credential.https://example.com.helper, credential.https://example. com.helper). Gu ruige seo, cha robh cairtean fiadhaich leithid *.example.com ceadaichte ach airson roghainnean HTTP, ach cha robh taic aca airson ceangal teisteanais. Ann an Git 2.26, tha na h-eadar-dhealachaidhean sin air an cuir às agus, mar eisimpleir, gus ainm-cleachdaidh a cheangal ris a h-uile fo-roinn as urrainn dhut a shònrachadh a-nis:

    [creideas "https://*.example.com"]

    ainm-cleachdaiche = taylorr

  • Tha leudachadh taic deuchainneach airson clonadh pàirt (clones pàirt) a’ leantainn, a’ toirt cothrom dhut dìreach pàirt den dàta a ghluasad agus obrachadh le leth-bhreac neo-choileanta den stòr. Tha an fhoillseachadh ùr a’ cur àithne ùr “git sparse-checkout add”, a leigeas leat clàran fa leth a chuir ris gus an gnìomhachd “seic” a chuir an sàs ann am pàirt den chraobh obrach a-mhàin, an àite a bhith a’ liostadh a h-uile clàr mar sin aig an aon àm tron ​​​​àithne “git sparse-checkout set" (faodaidh tu eòlaire a chur ris aon ri aon, gun a bhith ag ath-shònrachadh an liosta gu lèir gach turas).
    Mar eisimpleir, gus clonadh a dhèanamh air stòr git / git gun a bhith a’ dèanamh bloban, a’ cuingealachadh àite pàighidh gu dìreach an eòlaire bunaiteach den leth-bhreac obrach, agus a’ comharrachadh àite-pàighidh fa leth airson na clàran “t” agus “Sgrìobhainnean”, dh’ fhaodadh tu sònrachadh:

    $ git clone --filter = blob: gin --sparse [post-d fo dhìon]:git/git.git

    $ cd git
    $ git sparse-checkout init --cone

    $ git sparse-checkout cuir t
    ....
    $ git sparse-checkout cuir Sgrìobhainnean ris
    ....
    $ git sparse-checkout liosta
    Documentation
    t

  • Tha coileanadh na h-àithne “git grep”, a thathar a’ cleachdadh gus an dà chuid susbaint gnàthach an stòrais agus ath-sgrùdaidhean eachdraidheil a sgrùdadh, air a leasachadh gu mòr. Gus an rannsachadh a luathachadh, bha e comasach susbaint na craoibhe obrach a sganadh le bhith a’ cleachdadh iomadh snàithlean (“git grep –threads”), ach bha an rannsachadh ann an ath-sgrùdaidhean eachdraidheil aon-snàithleach. A-nis chaidh an cuingealachadh seo a thoirt air falbh le bhith a’ cur an gnìomh comas gnìomhachd leughaidh a cho-thaobhadh bho stòradh stuthan. Gu gnàthach, tha an àireamh de shnàithleanan air an suidheachadh co-ionann ris an àireamh de choraichean CPU, nach eil sa mhòr-chuid de chùisean a-nis a’ feumachdainn an roghainn “-threads” a shuidheachadh gu soilleir.
  • Taic a bharrachd airson fèin-choileanadh cuir a-steach fo-òrdughan, slighean, ceanglaichean agus argamaidean eile den àithne “git worktree”, a leigeas leat obrachadh le grunn lethbhric obrach den stòr.
  • Taic a bharrachd airson dathan soilleir aig a bheil sreath teicheadh ​​​​ANSI. Mar eisimpleir, anns na roghainnean airson dathan soilleir “git config –color” no “git diff –color-moved” faodaidh tu “% C (brightblue)” a shònrachadh tron ​​​​roghainn “--format” airson gorm soilleir.
  • Tionndadh ùr de sgriobt air a chur ris fsmonitor-faire, a 'toirt seachad amalachadh leis an uidheamachd Neach-faire Facebook gus sùil a chumail air atharrachaidhean faidhle agus coltas fhaidhlichean ùra a luathachadh. Às deidh ùrachadh git tha feum air a chur an àite dubhan anns an ionad-tasgaidh.
  • Chaidh optimizations a chur ris gus clones pàirt a luathachadh nuair a bhios tu a’ cleachdadh bitmaps
    (inneal bitmap) gus sgrùdadh iomlan de gach nì a sheachnadh nuair a bhios tu a’ sìoladh an toraidh. Thathas a-nis a’ sgrùdadh bloban (-filter = blob: gin agus —filter = blob: limit = n) rè clonadh pàirt
    gu math nas luaithe. Dh’ainmich GitHub badan leis na h-optimizations sin agus taic deuchainneach airson clonadh pàirt.

  • Chaidh an àithne “git rebase” a ghluasad gu backend eile, a’ cleachdadh an inneal bunaiteach ‘merge’ (air a chleachdadh roimhe seo airson “rebase -i”) an àite ‘patch + apply’. Tha na backends eadar-dhealaichte ann an dòighean beaga, mar eisimpleir, às deidh dhaibh leantainn air adhart le gnìomhachd às deidh còmhstri fhuasgladh (git rebase --continue), tha an backend ùr a’ tabhann an teachdaireachd gealltanas a dheasachadh, fhad ‘s a bha an seann fhear dìreach a’ cleachdadh an t-seann teachdaireachd. Gus tilleadh chun t-seann ghiùlan, faodaidh tu an roghainn "--apply" a chleachdadh no an caochladair rèiteachaidh 'rebase.backend' a shuidheachadh gu 'apply'.
  • Tha eisimpleir de inneal-làimhseachaidh airson paramadairean dearbhaidh a chaidh a shònrachadh tro .netrc air a lughdachadh gu foirm a tha freagarrach airson a chleachdadh a-mach às a’ bhogsa.
  • Chuir sinn ris an t-suidheachadh gpg.minTrustLevel gus an ìre earbsa as ìsle a shuidheachadh airson diofar eileamaidean a nì dearbhadh ainm-sgrìobhte didseatach.
  • Chaidh roghainn “-pathspec-from-file” a chuir ri “git rm” agus “git stash”.
  • Lean leasachadh air ionadan deuchainn mar ullachadh airson gluasad gu algairim hashing SHA-2 an àite SHA-1.

Source: fosgailtenet.ru

Cuir beachd ann