Den nya versionen av Git 2.46 kommer efter tre månaders utveckling och i den här nya versionen har flera förbättringar och betydande nya funktioner införlivats, såsom experimentellt stöd för en ny typ av bitmappar, förbättringar av den experimentella "reftable" backend, nytt kommandoradsgränssnitt för kommandot "git config", bland annat.
Denna nya version av Git 2.46 innehåller buggfixar från över 96 bidragsgivare, 31 av dem nya och som sådan den nya versionen innehåller 746 ändringar.
Huvudnya funktioner i Git 2.46
Det experimentella stödet för "pseudofusion accessibility bitmap" är en av de viktigaste utvecklingarna av den här utgåvan, och den här nya typen av bitmapsoch skiljer sig från den traditionella strukturen "tillgänglighetsbitmapp" genom att lagra data om uppsättningar av commit-relaterade objekt inte för varje enskild commit, utan för flera commits samtidigt.
Som sådan, denna pseudomerge tillgänglighetsbitmapp tillåter användning av en enda bitmapp för att definiera objekt i commits av olika grenar, vilket resulterar i en betydande prestandaförbättring, särskilt på stora förvar. Detta påskyndar operationer som git fetch, git rev-list och git clone genom att minska behovet av att generera flera separata bitmappar.
Git 2.46 introducerar också flera viktiga förbättringar av dess kommandoradsgränssnitt och i hanteringen av referenser och datalagring. Kommandoradsgränssnittet för git config-kommandot har gjorts om, ersätter olika alternativ som –get, –get-all, –unset och –remove-section med en uppsättning mer intuitiva underkommandon. Till exempel, för att visa alla förvarskonfigurationer kan du nu använda kommandot "git config lista«, och för att se innehållet i en specifik parameter kan du nu använda kommandot «git config get ». För att filtrera resultaten ytterligare kan du använda alternativet "–regexp" för att ange ett filter baserat på ett reguljärt uttryck.
Utöver detta, i protokollet «credential helper" har lagt till stöd för nya "authtype" och "credential"-fält, så att du kan skapa hanterare för HTTP-autentiseringssystem som gör mer än att bara verifiera användarnamnet och lösenordet, till exempel när du använder Bearer Token i OAuth 2.0. Och tidigare, För att arbeta med sådana autentiseringssystem var det nödvändigt att specificera konfidentiella uppgifter i klartext i parametern http.extraHeader. Dessutom, protokollet lägger till möjligheten att bevara varje styrenhets tillstånd av referenser för att stödja multifaktorautentiseringsmetoder som används i protokoll som NTLM och Kerberos.
Å andra sidan, har utvecklingen av den experimentella "reftable" backend förbättrats för effektiv lagring av länkar till grenar och taggar i förvaret. Den nya versionen lägger till kommandot "git refs migrate –ref-format=reftable" för att migrera befintliga arkiv till den "reftable" backend (tidigare var backend endast aktiverat när förvaret initierades).
Också, I Git 2.46 har processen för att konvertera några tester från testsviten startats, till användningen av enhetstester. Detta är avsett att förenkla testning av komponenter på låg nivå och kommer att öka effektiviteten i testprocessen på Windows-plattformen, vilket genererar stora overheadkostnader när man kör ett antal processer på en stor plattform under exekvering av tester implementerade i ett av skalskripten. .
Av andra förändringar som sticker ut av denna nya version:
- Lade till "–no-advice"-alternativet till git-kommandot, som inaktiverar alla råd och tipsmeddelanden, vilket kan vara användbart för att förhindra att loggen täpps till med onödig information under ett automatiserat git-samtal.
- Lade till möjligheten att använda "#RGB"-representationen utöver "#RRGGBB"-representationen i kod för att analysera färginställningar.
- När git merge ser att indexet inte kan uppdateras (till exempel på grund av
till en annan process som gör samma sak i bakgrunden) - Ett CPP-makro USE_THE_REPOSITORY_VARIABLE introduceras för att hjälpa till att överföra kodbasen till att vara mindre beroende av tillgängligheten av singleton-instansen the_repository.
- "git version –build-options" rapporterar versionsinformationen för
- OpenSSL och andra bibliotek (om sådana används) i byggnaden.
- Fixade minnesläckor i "git mv"
- Uppdaterat stöd för komplettering av kommandorad för zsh (in contrib/)
för att sluta exponera internt tillstånd för slutanvändarens skalinteraktion
Slutligen om du är intresserad av att veta mer om detkan du kontrollera detaljerna i följande länk.