Den nye version af versionskontrolsystemet , Git 2.26.0, er nu tilgængelig og bringer adskillige nye funktioner , eksperimentel understøttelse og, vigtigst af alt, optimeringer. For dem, der ikke er bekendt med Git, er det et af de mest populære, pålidelige og højtydende versionskontrolsystemer , der leverer fleksible, ikke-lineære udviklingsværktøjer baseret på forgrening og sammenlægning.
For at sikre historikkens integritet og modstandsdygtighed over for ændringer i efterfølgende rækkefølge, bruges den implicitte hash af hele den tidligere historik i hver commit; det er også muligt at signere udviklerne af individuelle tags og commits digitalt.
Sammenlignet med den tidligere udgivelse har den nye version vedtaget 504 ændringer, der er udarbejdet med deltagelse af 64 udviklere, hvoraf 12 deltog i udviklingen for første gang.
Git 2.26.0 Nøgle nye funktioner
Denne nye version overfører standardindstillingen til version 2 af Git-kommunikationsprotokollen , som bruges, når en klient forbindes eksternt til en Git-server. Version 2 er kendt for at give mulighed for at filtrere branches og tags på serversiden og returnere en kondenseret liste over links til klienten.
En anden vigtig innovation er muligheden for at tilføje nye funktioner til protokollen, efterhånden som nye funktioner bliver tilgængelige i værktøjskassen. Klientkoden forbliver kompatibel med den tidligere protokol og kan fortsætte med at fungere med både nye og gamle servere, og vender automatisk tilbage til den første version, hvis serveren ikke understøtter den anden.
Muligheden "–Show-scope« er blevet føjet til kommandoen «git config", hvad forenkler identifikationen af det sted, hvor visse konfigurationer er defineret.
Git giver dig mulighed for at definere konfigurationer forskellige steder: i lageret (.git / info / config), i brugerens bibliotek (~ / .gitconfig), i den systemdækkende konfigurationsfil (/ etc / gitconfig) samt gennem kommandolinjevalg og miljøvariabler.
Når man kører ` git config` , er det ret svært at forstå præcis, hvor den ønskede konfiguration er defineret. Indstillingen ` --show-origin` var tilgængelig for at løse dette problem, men den viser kun stien til den fil, hvor konfigurationen er defineret, hvilket er nyttigt, hvis du har til hensigt at redigere filen, men ikke nyttigt, hvis du har brug for at ændre værdien via `git config` ved hjælp af indstillingerne `--system`, `--global` eller `--local`.
På den anden side nævner annonceringen af denne nye version, at udvidelsen af den eksperimentelle understøttelse af delvise kloner blev fortsat , hvilket kun tillod overførsel af en del af dataene og arbejdede med en ufuldstændig kopi af arkivet.
Den nye version tilføjer en ny kommando, "git sparse-checkout add" , som giver dig mulighed for at tilføje separate mapper for kun at anvende " checkout "-operationen på en del af arbejdstræet, i stedet for at liste alle disse mapper på én gang via kommandoen " git sparse-checkout set ".
Ydeevnen af kommandoen " git grep ", som bruges til at søge i både det faktiske indhold af arkivet og historiske revisioner, øges betydeligt.
For at fremskynde søgningen var det tilladt at scanne arbejdstræet ved hjælp af flere tråde (" git grep --threads "), men søgning i historiske revisioner foregik med én tråd. Denne begrænsning er nu fjernet på grund af implementeringen af muligheden for at parallelisere læseoperationer i objektlageret .
Som standard er antallet af tråde sat lig med antallet af CPU-kerner, hvilket i de fleste tilfælde nu ikke kræver eksplicit konfiguration af " --threads "-indstillingen.
Tilføjet understøttelse af autofuldførelse af underkommandoinput , stier, links og andre argumenter i "git worktree"-kommandoen, hvilket tillader at arbejde med flere arbejdskopier af arkivet.
Vi kan også finde den nye version af fsmonitor-watchman-scriptet , som integrerer med Facebook Watchman-mekanismen for at fremskynde sporing af filændringer og visningen af nye filer. Efter opdatering af Git skal du udskifte hook'en i repository'et.
Hvis du vil vide mere om denne nye udgivelse, kan du læse den originale artikel på følgende link.