ĂshtĂ« prezantuar versioni i sistemit tĂ« distribucionit pĂ«r menaxhimin e burimeve tĂ« kodit Git 2.53. Git karakterizohet nga performancĂ« e lartĂ« dhe ofron mjete pĂ«r zhvillim jo linear, tĂ« bazuara nĂ« degĂ«zim dhe bashkim degĂ«sh. PĂ«r tĂ« siguruar integritetin e historisĂ« dhe qĂ«ndrueshmĂ«rinĂ« ndaj ndryshimeve "me prapavijĂ«", pĂ«rdoren hash-imi implicit i gjithĂ« historisĂ« sĂ« mĂ«parshme nĂ« çdo commit, si dhe verifikimi me nĂ«nshkrime dixhitale tĂ« zhvilluesve pĂ«r etiketa dhe commit-e tĂ« veçanta. Kodi i Git-it shpĂ«rndahet nĂ«n licencĂ«n GPLv2+.
Në krahasim me lëshimin e kaluar, versioni i ri ka pranuar 466 ndryshime, të përgatitura me pjesëmarrjen e 70 zhvilluesve (21 prej tyre kanë marrë pjesë për herë të parë në zhvillimin e Git). Novitetet kryesore:
- Shtohet mundësia e aplikimit të strategjisë së paketimit të repozitorëve "geometric" ("git repack --geometric") për repozitorët e jashtëm, që janë klonuar pjesërisht dhe funksionojnë në modalitetin "promisor" (objektet e munguar ngarkohen sipas nevojës). Në ripaketim me opsionet "--geometric", skedarët pack me zgjerimin ".promisor" përpunohen dhe paketohen veçmas. Strategjia "geometric" lejon reduktimin e kohës së mirëmbajtjes së monorepozitorëve të mëdhenj, duke ofruar ripaketim selektiv të objekteve dhe duke përjashtuar operacionet e tepruara që konsumojnë shumë burime, siç është bashkimi i të gjitha skedarëve pack (ruhet progresioni gjeometrik i madhësisë së skedarëve pack, ku çdo skedar pack i mëpasshëm duhet të jetë të paktën dy herë më i madh se paraardhësi i tij).
- NĂ« komandĂ«n «git fast-import» Ă«shtĂ« shtuar opsioni «âsigned-commits=strip-if-invalid» pĂ«r tĂ« hequr nĂ«nshkrimet dixhitale nga objektet qĂ« po importohen, tĂ« cilat janĂ« bĂ«rĂ« jo tĂ« sakta pas rishkrimit tĂ« njĂ« pjese tĂ« historisĂ« sĂ« depozitĂ«s. Deri mĂ« tani, mund tĂ« importonit ose tĂ« hiqnit tĂ« gjitha nĂ«nshkrimet pa ndarĂ« ato tĂ« vlefshme nga ato tĂ« pavlefshme. Opsioni «strip-if-invalid» lejon krijimin e mjeteve pĂ«r ruajtjen e nĂ«nshkrimeve tĂ« vlefshme dhe ri-nĂ«nshkrimin e objekteve me nĂ«nshkrime tĂ« pavlefshme.
- NĂ« daljen e komandĂ«s «git repo structure» Ă«shtĂ« shtuar informacioni rreth madhĂ«sisĂ« sĂ« tĂ« gjitha objekteve tĂ« arritshme (reachable) nĂ« repository me ndarje sipas llojeve tĂ« tyre. Tani informata shfaqet nĂ« njĂ« format tĂ« lexueshĂ«m me njĂ«si matĂ«se dhe tregohet veçmas pĂ«r madhĂ«sitĂ« aktuale dhe ato qĂ« zĂ«nĂ« hapĂ«sirĂ« nĂ« disk, duke lejuar vlerĂ«simin e madhĂ«sisĂ« totale tĂ« repository-t nĂ« disk. $ git repo structure | StrukturĂ« e repository-t | Vlera | | âââââââ | âââ- | | * Referencat | | | * Numri | 1.78 k | | * DegĂ«t | 5 | | * Etiketat | 1.03 k | | * Remote | 749 | | * TĂ« tjerĂ«t | 0 | | | | | * Objeket e arritshme | | | * Numri | 421.37 k | | * Komitetet | 88.03 k | | * PemĂ«t | 169.95 k | | * Blob-et | 162.40 k | | * Etiketat | 994 | | * MadhĂ«sia e inflacionit | 7.61 GiB | | * Komitetet | 60.95 MiB | | * PemĂ«t | 2.44 GiB | | * Blob-et | 5.11 GiB | | * Etiketat | 731.73 KiB | | * MadhĂ«sia nĂ« disk | 301.50 MiB | | * Komitetet | 33.57 MiB | | * PemĂ«t | 77.92 MiB | | * Blob-et | 189.44 MiB | | * Etiketat | 578.13 KiB |
- Në komandën «git maintenance» është shtuar nënkomanda «is-needed» për të kryer operacione mirëmbajtjeje të repository-t vetëm kur ka nevojë për të.
- Në ekipin eksperimental «git replay», për default është implementuar përditësimi i lidhjeve në transaksion, në vend që të tregojë se ku duhet të tregojnë lidhjet, pa përditësimin e tyre.
- NĂ« komandĂ«n «git blame» Ă«shtĂ« shtuar mundĂ«sia pĂ«r tĂ« zgjedhur algoritmin e vlerĂ«simit tĂ« ndryshimeve pĂ«rmes opsionit «âdiff-algorithm=<algo>».
- NĂ« komandĂ«n «git repo info» Ă«shtĂ« shtuar opsioni «âall».
- Shtimi i mbështetjes për lidhjet simbolike për platformën Windows është transferuar nga Git-for-Windows.
Në versionin e kaluar, është shtuar një paralajmërim për aktivizimin e ndërtimit të komponenteve në gjuhën Rust në Git 2.53. Sidoqoftë, në fakt, në versionin Git 2.53 janë shtuar vetëm disa përmirësime për mbështetje të Rust (mundësia për ndërtim pa GNU sed), por ndërtimi me Rust, duke përdorur Makefile, është lënë për default të çaktivizuar (kërkon aktivizimin e flamurit WITH_RUST), ndërsa me përdorimin e Meson aktivizohet automatikisht nëse ekziston kompajleri rustc. Në versionin Git 3.0, instrumenti Rust pritet të përfshihet në listën e varësive të ndërtimit të detyrueshme.
Burimi: opennet.ru
