Git 2.41 puna mana whakahaere e waatea ana

I muri i nga marama e toru o te whakawhanaketanga, kua whakaputahia te tukunga o te punaha whakahaere punaha tohatoha Git 2.41. Ko Git tetahi o nga punaha whakahaere putanga tino rongonui, pono, me te tino mahi e whakarato ana i nga taputapu whanaketanga kore-raina ngawari i runga i te pekanga me te whakakotahi i nga manga. Hei whakarite i te tika o te hitori me te aukati ki nga huringa whakamuri, ka whakamahia te hashing o te hitori katoa o mua i ia mahi, ka taea hoki te manatoko i nga tohu takitahi me te mahi me nga hainatanga mamati mai i nga kaihanga.

I whakaritea ki te tukunga o mua, 542 nga huringa i whakaaetia ki te putanga hou, kua rite ki te whakauru mai o nga kaiwhakawhanake 95, a 29 i uru ki te whanaketanga mo te wa tuatahi. Nga mahi hou:

  • Kua pai ake te whakahaere i nga mea kaore e taea te toro atu kaore i te tohutoro i roto i te putunga (kaore nga manga, nga tohu tohu ranei). Ko nga mea e kore e taea te toro atu ka tangohia e te kaikohi paru, engari ka noho ki roto i te putunga mo etahi wa i mua i te tangohanga hei karo i nga ahuatanga iwi. Hei pupuri i te waa o nga mea kaore e taea te toro atu, me herea nga tapanga ki a raatau me te wa huringa o nga mea rite, kaore e taea te penapena i roto i te kete-pakihi, kei reira nga mea katoa he wa huringa noa. I mua, i penapenahia ia ahanoa kaore e taea te toro atu ki roto i te konae motuhake, i puta he raru mena he maha nga mea hou kaore e taea te toro atu kaore ano kia whakakorehia. I roto i te tukunga hou, ma te taunoa, ka whakamahia te tikanga "cruft pack" ki te kiki i nga taonga kaore e taea te toro atu, e taea ai te penapena i nga mea katoa kaore e taea te toro atu ki roto i te konae kete kotahi, me te whakaata i nga raraunga mo te wa whakarereke o ia mea ki tetahi ripanga motuhake kua rongoa ki roto kōnae me te toronga “.mtimes” me te hono ma te whakamahi i te konae taurangi me te toronga ".idx".
    Git 2.41 puna mana whakahaere e waatea ana
  • Ma te taunoa, ka taea te pupuri i te taupū whakamuri (revindex) i runga i te kōpae mo nga konae kete. I te wa i whakamatauria ki nga whare putunga torvalds/linux, na te whakamahi i te tohu whakamuri i taea ai e matou te tere ake i nga mahi "git push" kaha rawa ki te 1.49 nga wa, me nga mahi ngawari, penei i te tatau i te rahi o te mea kotahi ma te whakamahi "git cat- kōnae --batch='%(rahi kaupapa:kōpae)' » 77 wa. Ko nga konae (".rev") me te taurangi whakamuri ka penapena ki roto i te putunga ki te raarangi ".git/objects/pack".

    Kia maumahara ko Git kei te rongoa i nga raraunga katoa i roto i te ahua o nga mea, ka waiho ki nga konae motuhake. Hei whakanui ake i te pai o te mahi me te putunga, ka whakauruhia nga taonga ki roto i nga konae kete, ka whakaatuhia nga korero i roto i te ahua o te awa o nga taonga e whai ana i muri mai i tetahi atu (he ahua rite te whakamahi ina whakawhiti taonga me te git fetch me te git whakahau pana). Ka waihangahia he konae taurangi (.idx) mo ia konae kete, e taea ai e koe te whakatau tere i te wehenga i roto i te konae kete e penapena ai te ahanoa e te tautohu ahanoa.

    Ko te taurangi whakamuri kei roto i te tukunga hou e whai ana ki te whakamaarama i te tukanga o te whakatau i te ID ahanoa mai i nga korero mo te waahi o te mea kei roto i te konae kete. I mua, i mahia taua huringa i runga i te rere i te wa o te paahitanga o te konae kete ka penapena ki roto i te mahara anake, kaore i whakaaehia te whakamahi ano i aua taurangi me te akiaki kia mahia te taurangi ia wa. Ko te mahi o te hanga taurangi ka whakaitihia ki te hanga i nga huinga takirua ahanoa me te whakariterite ma te tuunga, ka roa te waa mo nga konae kete nui.

    Hei tauira, ko te mahi whakaatu i nga ihirangi o nga taonga, e whakamahi ana i te taurangi tika, he 62 nga wa tere atu i te mahinga o te whakaatu i te rahi o nga mea, kaore i taurangihia nga raraunga hononga-a-ahua. I muri i te whakamahi i te tohu whakamuri, ka timata enei mahi ki te tango i te wa kotahi. Ko nga tohu whakamuri ka taea e koe te tere ake te mahi tuku taonga i te wa e whakahaere ana i nga tono tiki me te pana ma te whakawhiti tika i nga raraunga kua rite mai i te kōpae.

    Git 2.41 puna mana whakahaere e waatea ana

  • He tautoko taapiri mo te tuku i nga pane WWW-Motuhēhēnga i waenga i te kaikawe whaimana me te ratonga motuhēhēnga ki te kawa "kaiawhina whaimana" i whakamahia ki te tuku i nga tohu i te wa e uru ana ki nga whare pupuri kua herea. Ko te tautoko mo te pane WWW-Motuhēhēnga ka taea te tuku i nga tawhā awhi OAuth ki te wehe atu i te urunga a te kaiwhakamahi ki nga whare putunga me te whakawhāiti i nga awhi e waatea ana mo nga tono.
  • Kōwhiringa hōputu taapiri "%(i mua-muri: )", ka taea e koe te tiki korero tonu mo te maha o nga mahi e noho ana, e ngaro ana ranei i roto i tetahi peka, e pa ana ki tetahi atu peka (e hia te nui o tetahi peka kei muri, kei mua ranei i tetahi atu i te taumata o te mahi). I mua, kia rua nga whakahau motuhake mo te whiwhi korero: "git rev-list --count main..my-feature" ki te tiki i te maha o nga commits ahurei ki te peka, me te "git rev-list --count my-feature.. matua" ki te tiki i nga tau e ngaro ana. Inaianei ka taea te whakaheke i aua tatauranga ki te whakahau kotahi, ka whakamaarama i nga kaikawe tuhituhi me te whakaiti i te wa mahi. Hei tauira, hei whakaatu i nga peka kore i hanumi me te arotake mena kei muri, kei mua ranei o to ratou peka matua, ka taea e koe te whakamahi i te rarangi kotahi: $ git for-each-ref --no-merged=origin/HEAD \ --format=' %(ingoawhakaaro:poto) %(kei mua-muri :origin/HEAD)' \ refs/heads/tb/ | tīwae -t tb/cruft-extra-tips 2 96 tb/for-ia-ref—whakakorehia te 16 96 tb/roaring-bitmaps 47 3 hei utu mo te tuhinga i whakamahia i mua, he 17 nga wa puhoi ake: $ git for-ia-ref — format='%(ingoawhakaaro:poto)' --no-merged=taketake/UPAPA \ refs/heads/tb | i te wa e panui ana ref mahi i mua="$(git rev-list --count origin/HEAD..$ref)" behind="$(git rev-list --count $ref..origin/HEAD)" printf "%s %d %d\n" "$ref" "$i mua" "$muri" kua oti | tīwae -t tb/cruft-extra-tips 2 96 tb/mo-ia-ref—kaore i te 16 96 tb/mahere-bit haruru 47 3
  • Kua taapirihia te whiringa "--porcelain" ki te whakahau "git fetch", e whakaputa ana i te putanga ki te whakatakotoranga " ”, he iti ake te panui, engari he pai ake mo te tarai i nga tuhinga.
  • I taapirihia te "fetch.hideRefs" ki te tere ake i nga mahi "git fetch" ma te huna i tetahi waahanga o nga hononga i roto i te putunga o te rohe i te waahi o te tirotiro mena ka tukuna e te tūmau te huinga katoa o nga taonga, e whakaora ana i te wa ma te whakaiti i te haki ki nga tūmau anake mai i nga raraunga ka tangohia tika mai. Hei tauira, i te wa e whakamatautau ana i tetahi punaha me nga putunga kei roto te maha o nga hononga o waho e whai ana, haunga nga hononga katoa engari ko nga mea e tukuna ana ki te $amamao te kaitoro i tohua i whakaitihia te mahi "git fetch" mai i te 20 meneti ki te 30 hēkona. $ git -c fetch.hideRefs=refs -c fetch.hideRefs=!refs/mamao/$mamao \ tiki $mamao
  • Ko te whakahau "git fsck" ka whakamahi i te kaha ki te tirotiro mo te pirau, te whakataurite o nga utu, me te tika o nga uara i roto i nga maheremoka urunga me nga tohu whakamuri.
  • Ko te whakahau "git clone --local" ka whakaatu he hapa i te wa e ngana ana ki te kape mai i tetahi putunga kei roto nga hononga tohu kei roto $GIT_DIR.

Source: opennet.ru

Tāpiri i te kōrero