2. februar præsenteret udgivelse af et distribueret system til administration af kildekoder Git 2.53.
Git skiller sig ud ved sin høje ydeevne og leverer redskaber til ikke-lineær udvikling baseret på forgrening og sammensmeltning af grene. For at sikre integriteten af historien og modstandsdygtighed over for "bagudrettede" ændringer anvendes implicit hashing af hele den tidligere historie i hver commit, samt autentificering med digitale signaturer fra udviklerne af enkelte tags og commits. Koden til Git distribueres under GPLv2+ licensen.
I forhold til den tidligere udgave er der i den nye version blevet indført 466 ændringer, forberedt med deltagelse af 70 udviklere (21 deltager for første gang i udviklingen af Git). De vigtigste nyheder:
- Tilføjet mulighederne for at anvende en geometrisk strategipakker (git repack —geometric) til delvist klonede eksterne repository, som fungerer i promisor-tilstand (manglende objekter hentes efter behov). Ved repackning med mulighederne —geometric behandles og pakkes pack-filer med .promisor-udvidelsen separat. Den geometriske strategi gør det muligt at reducere vedligeholdelsestiden for store monorepositories ved selektiv repackning af objekter og udeladelse af unødvendige ressourcetunge operationer, såsom at sammensmelte alle pack-filer (den geometriske progression for størrelse på pack-filer bevares, hvor hver næste pack-fil skal være mindst dobbelt så stor som den foregående).
- Til git fast-import-teamet er der tilføjet en mulighed —signed-commits=strip-if-invalid for at fjerne digitale signaturer fra importerede objekter, der er blevet ugyldige efter omskrivning af dele af repository-historien. Indtil nu har man kun kunnet importere eller slette alle signaturer uden at skelne mellem gyldige og meningsløse. Muligheden strip-if-invalid muliggør værktøjer til at bevare gyldige signaturer og genunderskrive objekter med miste relevans signaturer.
- I outputtet fra kommandoen git repo structure er der blevet tilføjet information om størrelsen af alle tilgængelige objekter (reachable) i repositoryet med opdeling efter deres typer. Informationen vises nu i læselig form med måleenheder og vises separat for den faktiske størrelse og den størrelse, der optages på disken, hvilket giver mulighed for at vurdere den samlede størrelse af repositoryet på disken:
$ git repo struktur | Repository struktur | Værdi | | ——————— | ———- | | * Referencer | | | * Antal | 1.78 k | | * Brancher | 5 | | * Tags | 1.03 k | | * Remotes | 749 | | * Andre | 0 | | | | * Opnåelig objekter | | | * Antal | 421.37 k | | * Commits | 88.03 k | | * Træer | 169.95 k | | * Blobs | 162.40 k | | * Tags | 994 | | * Inflateret størrelse | 7.61 GiB | | * Commits | 60.95 MiB | | * Træer | 2.44 GiB | | * Blobs | 5.11 GiB | | * Tags | 731.73 KiB | | * Disk størrelse | 301.50 MiB | | * Commits | 33.57 MiB | | * Træer | 77.92 MiB | | * Blobs | 189.44 MiB | | * Tags | 578.13 KiB |
- I git vedligeholdelseskommandoen er der tilføjet en underkommando is-needed til udførelse af vedligeholdelsesoperationer på repositoriet kun når det er nødvendigt.
- I den eksperimentelle git replay-kommando er opdatering af referencer som standard implementeret i transaktionen, i stedet for at vise, hvor referencerne skal pege hen, uden opdatering.
- I git blame-kommandoen er det nu muligt at vælge algoritmen for forskydningsvurdering ved hjælp af optionen —diff-algorithm=.
- I git repo info-kommandoen er der tilføjet optionen —all.
- Understøttelsen af symboliske links til Windows-platformen er blevet overført fra Git-for-Windows.
Tidligere udgave indeholdt advarsel inkluderingen af komponentbygning på Rust-sproget som standard i Git 2.53. Ikke desto mindre har den faktiske version af Git 2.53 kun er tilføjet nogle forbedringer i Rust-understøttelsen (muligheden for bygning uden GNU sed), men bygningen med Rust ved brug af Makefile forbliver deaktivere som standard (kræver at flaget WITH_RUST er sat), og ved brug af Meson aktiveres det automatisk hvis rustc-kompilatoren er til stede. I Git version 3.0 planlægger de at inkludere Rust-værktøjerne som nødvendige byggeafhængigheder. 2. februar blev udgivet en distribueret versionskontrolsystem 🥇Git 2.53 | ProHoster
Kilde: linux.org.ru
