2 februari presenteras utgivning av det distribuerade systemet för hantering av kÀllkod Git 2.53.
Git kÀnnetecknas av hög prestanda och erbjuder verktyg för icke-linjÀr utveckling, baserat pÄ förgrening och sammanslagning av grenar. För att sÀkerstÀlla integriteten i historiken och motstÄndskraft mot "bakÄtriktade" förÀndringar anvÀnds implicit hashing av hela tidigare historik i varje commit, samt digitala signaturer frÄn utvecklare för specifika taggar och commits. Git-kod sprids under GPLv2+.
JÀmfört med den tidigare versionen har 466 Àndringar antagits i den nya versionen, förberedda med deltagande av 70 utvecklare (21 deltog för första gÄngen i utvecklingen av Git). Huvudsakliga nyheter:
- Tillagd möjligheten att tillĂ€mpa strategin för packning av repositorier geometric (git repack âgeometric) pĂ„ delvis klonade externa repositorier som körs i promisor-lĂ€ge (de saknade objekten laddas ner vid behov). Vid ompackning med -geometric alternativ bearbetas och packas .promisor packfiler separat. Geometric strategin minskar underhĂ„llstiden för stora monorepositorier genom selektiv ompackning av objekt och uteslutning av onödiga resurskrĂ€vande operationer, sĂ„som sammanslagning av alla packfiler (den geometriska progressionen av storleken pĂ„ packfilerna bibehĂ„lls, dĂ€r varje nĂ€sta packfil mĂ„ste vara minst dubbelt sĂ„ stor som den föregĂ„ende).
- Till git fast-import kommandot har en option âsigned-commits=strip-if-invalid lagts till för att ta bort digitala signaturer frĂ„n importerade objekt som blivit ogiltiga efter att en del av repositoriets historia skrivits om. Tidigare kunde man antingen importera eller ta bort alla signaturer, utan att sĂ€rskilja giltiga och ogiltiga. Alternativet strip-if-invalid möjliggör implementering av verktyg för att bevara giltiga signaturer och om-signera objekt med ogiltiga signaturer.
- I utskriften av kommandot git repo structure har information om storleken pÄ alla nÄbara objekt (reachable) i repositoriet lagts till, uppdelat efter deras typer. Informationen visas nu i lÀsbar form med enheter för mÄtt och visas separat för den faktiska och pÄ disken upptagna storlekar, vilket gör det möjligt att bedöma den totala storleken pÄ repositoriet pÄ disken:
$ git repo structure | Repository structure | Value | | âââââââ | âââ- | | * References | | | * Count | 1.78 k | | * Branches | 5 | | * Tags | 1.03 k | | * Remotes | 749 | | * Others | 0 | | | | | * Reachable objects | | | * Count | 421.37 k | | * Commits | 88.03 k | | * Trees | 169.95 k | | * Blobs | 162.40 k | | * Tags | 994 | | * Inflated size | 7.61 GiB | | * Commits | 60.95 MiB | | * Trees | 2.44 GiB | | * Blobs | 5.11 GiB | | * Tags | 731.73 KiB | | * Disk size | 301.50 MiB | | * Commits | 33.57 MiB | | * Trees | 77.92 MiB | | * Blobs | 189.44 MiB | | * Tags | 578.13 KiB |
- Ett nytt underkommandot is-needed har lagts till i kommandot git maintenance för att utföra underhÄllsÄtgÀrder pÄ repot endast vid behov.
- I det experimentella kommandot git replay har uppdateringar av referenser som standard implementerats i transaktionen, istÀllet för att visa var referenserna ska pekas utan att uppdatera.
- I kommandot git blame har möjligheten att vĂ€lja algoritm för skillnadsbedömning lagts till med hjĂ€lp av alternativet âdiff-algorithm=.
- I kommandot git repo info har alternativet âall lagts till.
- Stödet för symboliska lÀnkar har överförts frÄn Git-for-Windows till Windows-plattformen.
Den tidigare utgÄvan innehöll en varning om att byggen pÄ Rust-sprÄket skulle aktiveras som standard i Git 2.53. Men i sjÀlva verket innehöll Git 2.53 endast har lagts till vissa förbÀttringar av Rust-stödet (möjlighet att bygga utan GNU sed), men byggen med Rust nÀr Makefile anvÀnds lÀmnades som standard avstÀngd (krÀver att flaggan WITH_RUST sÀtts), medan den aktiveras automatiskt nÀr kompilatorn rustc finns. I Git 3.0 kommer Rust-verktygen att inkluderas bland obligatoriska byggberoenden. planerar TGUI 1.12
KĂ€lla: linux.org.ru
