Hoʻokuʻu ʻia o ka ʻōnaehana mana kumu i hoʻolaha ʻia ʻo Git 2.31

Loaʻa i kēia manawa ka ʻōnaehana hoʻokele kumu i hāʻawi ʻia ʻo Git 2.31. ʻO Git kekahi o nā ʻōnaehana mana mana kaulana, hilinaʻi a kiʻekiʻe hoʻi, e hāʻawi ana i nā mea hana hoʻomohala non-linear maʻalahi e pili ana i ka lālā a me ka hoʻohui ʻana. No ka hōʻoia ʻana i ka pono o ka mōʻaukala a me ke kūʻē ʻana i nā hoʻololi retroactive, hoʻohana ʻia ka hashing implicit o ka mōʻaukala holoʻokoʻa i kēlā me kēia hana; hiki nō hoʻi ke hōʻoia i nā hōʻailona pilikino a hana pū me nā pūlima kikohoʻe o nā mea hoʻomohala.

Ke hoʻohālikelike ʻia i ka hoʻokuʻu mua ʻana, ua hoʻokomo ʻia ka mana hou i nā hoʻololi 679, i hoʻomākaukau ʻia me ke komo ʻana o nā mea hoʻomohala 85, kahi o 23 i komo i ka hoʻomohala no ka manawa mua. Nā hana hou nui:

  • Hoʻohui i ke kauoha "git maintenance", e hiki ai iā ʻoe ke hana i nā hana maʻamau i nā ʻōnaehana i kākoʻo ʻole i ka cron. No ka laʻana, me ka hoʻohana ʻana i kahi kauoha hou, hiki iā ʻoe ke hoʻonohonoho i ke kaʻina hana hoʻopihapiha waihona e holo i kēlā me kēia manawa, no laila ʻaʻole pono ʻoe e kali a paʻa ka waihona i ka wā e hoʻokō ʻia ai ka pahu i ka wā e holo ana i nā kauoha like ʻole. ʻO ke kauoha "git maintenance" hiki iā ʻoe ke hana i nā optimizations a me nā hana e mālama i ka hoʻolālā maikaʻi loa o ka waihona i ke kua, me ka ʻole o ka pale ʻana i ka hālāwai kūkākūkā - hoʻokahi hola, hana ʻia ka hana e hoʻoiho i nā mea hou mai ka waihona mamao a hoʻonui i ka. waihona me ka commit graph, a hoʻomaka ke kaʻina hana o ka hoʻopili ʻana i ka waihona i kēlā me kēia pō.
  • Kākoʻo i hoʻohui ʻia no ka mālama ʻana i kahi kuhikuhi hope (revindex) ma ka disk no nā faila pack. E hoʻomanaʻo e mālama ʻo Git i nā ʻikepili āpau ma ke ʻano o nā mea, aia i nā faila ʻokoʻa. No ka hoʻonui i ka pono o ka hana ʻana me ka waihona, hoʻokomo ʻia nā mea i loko o nā faila pack, kahi e hōʻike ʻia ai ka ʻike ma ke ʻano o ke kahawai o nā mea e hahai ana kekahi i kekahi (hoʻohana ʻia kahi ʻano like i ka wā e hoʻololi ai i nā mea me ka git fetch a me ka git push. kauoha). No kēlā me kēia waihona pūʻolo, ua hana ʻia kahi faila index (.idx), e hiki ai iā ʻoe ke hoʻoholo wikiwiki i ka offset i loko o ka waihona waihona kahi i mālama ʻia ai ka mea i hāʻawi ʻia me ka hoʻohana ʻana i ka mea hōʻike. Hoʻokomo ʻia ma Git 2.31, ʻo ka reverse index (.rev) ka manaʻo e hoʻoholo i ke kaʻina hana o ka hoʻoholo ʻana i kahi mea ʻike mai ka ʻike e pili ana i ke kau ʻana o kahi mea i loko o kahi faila.

    Ma mua, ua hana ʻia kēlā hoʻololi ʻana ma ka lele ʻana i ka wā e paʻi ana i ka faila pack a mālama ʻia i loko o ka hoʻomanaʻo wale nō, ʻaʻole i ʻae i ka hoʻohana hou ʻana i nā kuhikuhi like a koi ʻia e hana ʻia i kēlā me kēia manawa. ʻO ka hana o ke kūkulu ʻana i kahi papa kuhikuhi e hiki mai ana i ke kūkulu ʻana i kahi ʻano o nā mea-kūlana hui a hoʻokaʻawale iā ia ma ke kūlana, hiki ke lōʻihi no nā faila nui.

    No ka laʻana, ʻo kahi hana e hōʻike i nā ʻike o nā mea, e hoʻohana ana i kahi kuhikuhi pololei, ʻoi aku ka wikiwiki o 62 ma mua o kahi hana e hōʻike i ka nui o nā mea, kahi i kuhikuhi ʻole ʻia ai ka ʻikepili kūlana-i-mea. Ma hope o ka hoʻohana ʻana i ka index reverse, ua hoʻomaka kēia mau hana i ka manawa like. Hiki iā ʻoe ke hoʻolalelale i ka hoʻouna ʻana i nā mea i ka wā e hoʻokō ai i nā kauoha kiʻi a paʻi ma o ka hoʻoili pololei ʻana i ka ʻikepili i mākaukau mai ka disk. ʻO ka mea maʻamau, ʻaʻole i hana ʻia nā ʻōlelo hoʻohuli; no ka hana ʻana iā lākou, pono ʻoe e hiki ke hoʻonohonoho i ka "git config pack.writeReverseIndex true" a laila hoʻopaʻa i ka waihona me ke kauoha "git repack -Ad".

  • Hoʻohui ʻia nā loiloi hana e pili ana i ka ʻike ʻana i ka format file commit-graph, i hoʻohana ʻia no ka hoʻopaʻa ʻana i ka ʻike e pili ana i nā commits, nā ʻikepili hou e pili ana i ka helu commit generation, hiki ke hoʻohana ʻia e wikiwiki i nā hana hou me nā commits.
  • Hoʻohui ʻia nā koho no ka wehewehe hou ʻana i ka inoa o ka lālā nui i hoʻohana ʻia e ka paʻamau i nā waihona hou (init.defaultBranch hoʻonohonoho). Ke komo ʻana i nā waihona o waho, hoʻāʻo ʻo git e nānā i ka lālā i kuhikuhi ʻia e HEAD, ʻo ia. inā hoʻohana ke kikowaena waho i ka lālā "main" ma ka paʻamau, a laila e hoʻāʻo ka hana "git clone" e nānā i ka "main" kūloko. Kākoʻo ʻo Git 2.31 i kēia ʻano o ka nānā ʻana no nā waihona waihona ʻole. No ka laʻana, i ka wā e hoʻopaʻa ai i kahi waihona hou ma ka ʻāina ma mua o ka hoʻohui ʻana i nā pāpaʻi mua iā ia, e loaʻa i ka kope kūloko ka inoa paʻamau i hoʻonohonoho ʻia ma ka kikowaena waho.
  • Hoʻohui i kahi koho --disk-usage i ke kauoha "git rev-list" e hāʻawi i kahi hōʻuluʻulu o ka nui o nā mea.
  • I ka kali ʻana i ka hoʻololi e hiki mai ana i ka backend hui, ua hoʻomaikaʻi nui ʻia ka ʻike hou ʻana.
  • Ua hoʻopau ʻia ke kākoʻo no ka waihona hoʻoilina PCRE1.
  • Hiki ke pāpā ikaika i ka hoʻohana ʻana i nā loulou pōkole, me ka nānā ʻole i ka hashing algorithm. Hiki ke pāpā ʻia ma ka hāʻawi ʻana i ka waiwai "ʻaʻole" i ka ʻāpana core.abrev.
  • Hoʻohui ʻia ka "--path-format=(absolute|relative)" i ke kauoha "git rev-parse" e wehewehe pono inā e hoʻopuka ʻia nā ala pili a i ʻole.
  • He mea maʻalahi nā palapala hoʻopau Bash e hoʻohui i nā lula hoʻopau no kāu mau kauoha "git".
  • Hoʻohui i kahi koho --stdin i ke kauoha "git bundle" e heluhelu i nā kuhikuhi mai ke kahawai komo maʻamau.
  • Ua hoʻohui ʻia kahi koho hou "--diff-merges=" i ke kauoha "git log".
  • Hoʻohui ʻia ke koho "--deduplicatecan" i ke kauoha "git ls-files" e hoʻopau i ka lua.
  • Hoʻohui ʻia nā masks hou e kāpae i kahi ʻano hana - "^!" a me "^-".
  • Hoʻohui ʻia nā koho "--left-only" a me "--right-only" i ke kauoha "git range-diff" e hōʻike i hoʻokahi ʻaoʻao o ka laulā e hoʻohālikelike ʻia.
  • Hoʻohui ʻia --skip-to=" a me "--rotate-to=" i nā kauoha "git diff" a me "git log" e lele a neʻe i ka hopena o nā ala mua.
  • Hoʻohui ʻia ka koho "--skip-to=" i ke kauoha "git difftool" e hoʻomaka hou i kahi kau i hoʻopau ʻia mai kahi ala ʻole.
  • ʻO ke Code-of-conduct, ka mea i wehewehe i nā loina kumu no ka hoʻoponopono ʻana i nā kūlana hakakā ma waena o nā mea hoʻomohala, ua hoʻonui ʻia i ka mana 2.0 (ua hoʻohana ʻia ka mana 1.4 ma mua).

    Source: opennet.ru

Pākuʻi i ka manaʻo hoʻopuka