Bagong bersyon ng Git 2.28, na nagpapahintulot na huwag gamitin ang pangalang "master" para sa mga master branch

Magagamit paglabas ng isang distributed source control system git 2.28.0. Ang Git ay isa sa pinakasikat, maaasahan at may mataas na pagganap na mga sistema ng kontrol ng bersyon, na nagbibigay ng nababaluktot na non-linear na mga tool sa pagpapaunlad batay sa pagsasanga at pagsasama. Upang matiyak ang integridad ng kasaysayan at paglaban sa mga retroactive na pagbabago, ang implicit na pag-hash ng buong nakaraang kasaysayan ay ginagamit sa bawat commit; posible ring patunayan ang mga indibidwal na tag at commit gamit ang mga digital na lagda ng mga developer.

Kung ikukumpara sa nakaraang paglabas, ang bagong bersyon ay may kasamang 317 na pagbabago, na inihanda sa pakikilahok ng 58 na mga developer, kung saan 13 ang nakibahagi sa pag-unlad sa unang pagkakataon. Basic mga inobasyon:

  • Idinagdag ang setting ng init.defaultBranch, na nagbibigay-daan sa iyong pumili ng arbitrary na pangalan para sa pangunahing sangay, na gagamitin bilang default. Ang setting na ito ay idinagdag para sa mga proyekto na ang mga developer ay pinagmumultuhan ng mga alaala ng pagkaalipin, at ang salitang "panginoon" ay itinuturing bilang isang nakakasakit na pahiwatig o nagdudulot ng sakit sa isip at isang pakiramdam ng hindi natubos na pagkakasala. GitHub, GitLab и Bitbucket nagpasya na gamitin ang salitang "pangunahing" sa halip na ang salitang "master" para sa mga pangunahing sangay. Sa Git, tulad ng dati, ang pagpapatakbo ng "git init" na utos ay patuloy na lumilikha ng "master" na sangay bilang default, ngunit ang pangalang ito ay maaari na ngayong baguhin. Halimbawa, upang baguhin ang pangalan ng paunang sangay sa "pangunahing" maaari mong gamitin ang utos:

    git config --global init.defaultBranch main

  • Nagdagdag ng mga pag-optimize ng pagganap batay sa hitsura sa format ng commit-graph file, na ginagamit upang i-optimize ang pag-access sa commit ng impormasyon, suporta Mga filter ng Bloom, isang probabilistikong istraktura na nagbibigay-daan sa maling pagkakakilanlan ng isang nawawalang elemento, ngunit hindi kasama ang pagtanggal ng isang umiiral na elemento. Ang tinukoy na istraktura ay nagpapahintulot sa iyo na makabuluhang mapabilis ang paghahanap sa kasaysayan ng pagbabago kapag ginagamit ang mga utos na "git log - " o "git blame".
  • Ang command na "git status" ay nagbibigay ng impormasyon tungkol sa pag-usad ng partial cloning operation (sparse-checkout).
  • Isang bagong setting na "diff.relative" ang iminungkahi para sa "diff" na pamilya ng mga command.
  • Kapag sinusuri sa pamamagitan ng "git fsck", ang pag-uuri ng object tree ay sinusuri na ngayon at natukoy ang mga unsorted na elemento.
  • Ang interface para sa pag-edit ng sensitibong impormasyon sa trace output ay pinasimple.
  • Ang suporta para sa pagkumpleto ng mga opsyon para sa command na "git switch" ay idinagdag sa script ng pagkumpleto ng input.
  • Sinusuportahan na ngayon ng “git diff” ang pagpasa ng mga argumento sa iba't ibang notasyon (“git diff A..BC”, “git diff A..BC…D”, atbp.).
  • Idinagdag ang kakayahang tumukoy ng custom na pagma-map ng elemento sa utos na "git fast-export --anonymize" upang i-fine-tune ang output para gawin itong mas made-debug.
  • Ang "git gui" ay nagbibigay-daan sa iyo upang buksan ang gumaganang mga puno mula sa unang dialog.
  • Ang protocol na "fetch/clone" ay nagpapatupad ng kakayahan para sa server na ipaalam sa kliyente ang tungkol sa pangangailangang mag-load ng mga paunang inihanda na pack file bilang karagdagan sa ipinadalang naka-pack na data ng bagay.
  • Nagpatuloy ang trabaho sa paglipat sa SHA-256 hashing algorithm sa halip na SHA-1.

Pinagmulan: opennet.ru

Magdagdag ng komento