Git 2.37 tuku mana puna

Ko te tukunga o te punaha whakahaere puna tohatoha Git 2.37 kua panuitia. 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 peka me te hanumi. Hei whakapumau i te pono o te hitori me te aukati ki nga huringa whakamuri, ka whakamahia te hashing o te hitori katoa o mua ki ia mahi; ka taea hoki te whakamana i nga tohu takitahi me te mahi me nga hainatanga mamati a nga kaihanga.

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

  • Ko te tikanga o nga tohu tohu (sparse index), e kapi ana i tetahi waahanga o te putunga, kua rite mo te whakamahi whanui. Ka taea e nga tohu tohu te whakapai ake i te mahi me te penapena mokowā i roto i nga whare putunga e mahi ana i nga mahi kati (sparse-checkout) me te mahi ranei me te kape kore o te putunga. Ko te tukunga hou ka whakaoti i te whakaurunga o nga tohu tohu ki roto i te whakaaturanga git, git sparse-checkout, me nga whakahau git stash. Ko te tino painga o te mahi mai i te whakamahi i nga tohu tohu ka kitea me te whakahau git stash, kua 80% te piki o te tere o te mahi i etahi ahuatanga.
  • Kua whakatinanahia he tikanga hou mo te "puke rakau" mo te kiki i nga mea kaore e taea te toro atu kaore i te tohutoro i roto i te putunga (kaore i tohuhia e nga manga, nga tohu tohu). Ko nga mea e kore e taea te toro atu ka mukua e te kaikohi paru, engari ka noho tonu ki roto i te putunga mo etahi wa i mua i te whakakorenga kia kore ai nga tikanga reihi. Hei whai i te wa o te puta mai o nga mea kaore e taea te toro atu, me whakapiri nga tohu ki a raatau me te wa o te huringa o nga mea rite, kaore e taea te penapena ki roto i te konae putea kotahi kei roto i nga mea katoa he wa huringa noa. I mua, ko te tiaki i ia ahanoa ki te konae motuhake ka raru te maha o nga mea hou, kaore e taea te toro atu kaore ano kia taea te muku. Ko te tikanga "cruft pack" e whakaarohia ana ka taea e koe te penapena i nga mea katoa e kore e taea te toro atu ki roto i te konae kete kotahi, me te whakaata i nga raraunga mo te wa whakarereke o ia ahanoa i roto i te ripanga motuhake kua rongoa ki tetahi konae me te toronga ".mtimes".
  • Mo te Matapihi me te macOS, he tikanga hanga-a-roto mo te whai i nga huringa ki te punaha konae, ka taea e koe te karo i te huri haere i te raarangi mahi katoa i te wa e mahi ana i nga mahi penei i te "git status". I mua, ki te whai i nga huringa, ka taea te hono atu nga taputapu o waho mo te aroturuki i nga huringa i roto i te FS, penei i te Watchman, ma nga matau, engari me whakauru etahi atu papatono me te whirihoranga. Inaianei kua whakauruhia nga mahi kua tohua, ka taea te whakahohe ma te whakahau "git config core.fsmonitor true".
  • I roto i te whakahau "git sparse-checkout", tautoko mo tetahi atu ki te aratau "—cone", te tikanga mo te tautuhi i nga tauira mo te whakakao-a-waahanga, kua kiia kua tawhitotia, ka taea, ka whakatau i te waahanga o te putunga kei raro te mahi cloning, ki te whakarārangi i nga konae takitahi ma te whakamahi i te ".gitignore" wetereo, e kore e taea te whakamahi mo te arotautanga o nga tohu tohu.
  • Kua piki ake te ngawari ki te whirihora i te waea fsync() ki te whakakore i nga huringa ki te kōpae. Ko te tautoko mo te rautaki tukutahi "puranga" kua taapirihia ki te tawhā "core.fsyncMethod", e taea ai te tere ake te mahi i te wa e tuhi ana i te maha o nga konae takitahi ma te whakaemi i nga huringa i roto i te keteroki tuhi, ka tautuhia e te fsync kotahi () karanga. Ko te whakamatautau, i hua mai i te 500 o nga konae kua taapirihia ma te whakamahi i te whakahau "git add", i oti i roto i te 0.15 hēkona i te wa i whakahohea ai te aratau hou, i te wa e waea ana te fsync() i te 1.88 hēkona mo ia konae, me te kore whakamahi fsync - 0.06 hēkona .
  • Ko nga whakahau whakawhiti peka penei i te "git log" me te "git rev-list" kei aianei he whiringa "-since-as-filter=X" ka taea e koe te tarai i nga korero mo nga mahi kua pakeke ake i te "X". Kaore i rite ki te whiringa "—mai", ka whakatinanahia te whakahau hou hei tātari e kore e aukati i te rapunga i muri i te mahi tuatahi kua pakeke ake i te waa kua tohua.
  • I roto i te whakahau "git mamao", ka tohua te haki "-v", ka whakaatuhia nga korero mo nga waahanga o te whare putunga.
  • Kua taapirihia te tautuhinga "transfer.credentialsInUrl", ka taea te tango i nga uara "whakatupato", "mate" me te "tuku". Mena kua tohua i roto i te tawhā "mamao. .url" nga korero mo te kuputuhi tokau, ka ngana ki te mahi i te mahi "tiki", "pana" ranei ka taka ki te hapa mena ka whakatauhia te "transfer.credentialsInUrl" ki te "mate", he whakatupato ranei ki te "whakatupato".
  • Ma te taunoa, ka whakahohehia te whakatinanatanga hou o te aratau tauwhitiwhiti o te whakahau "git add -i", i tuhia ano mai i Perl ki C.

Source: opennet.ru

Tāpiri i te kōrero