Ny version av Git 2.28, tillåter att inte använda namnet "master" för master-grenar

Tillgängliga lansering av ett distribuerat källkontrollsystem Git 2.28.0. Git är ett av de mest populära, pålitliga och högpresterande versionskontrollsystemen, som tillhandahåller flexibla icke-linjära utvecklingsverktyg baserade på förgrening och sammanslagning. För att säkerställa historiens integritet och motståndet mot retroaktiva förändringar används implicit hash av hela den tidigare historien i varje commit, och det är också möjligt att certifiera individuella taggar och commits med digitala signaturer från utvecklare.

Jämfört med den tidigare utgåvan inkluderade den nya versionen 317 ändringar, förberedda med deltagande av 58 utvecklare, varav 13 deltog i utvecklingen för första gången. Grundläggande innovationer:

  • Lade till inställningen init.defaultBranch, som låter dig välja ett godtyckligt namn för huvudgrenen, som kommer att användas som standard. Den här inställningen har lagts till för projekt vars utvecklare hemsöks av minnen från slaveri, och ordet "mästare" uppfattas som en stötande antydan eller framkallar mental ångest och en känsla av oförlöst skuld. GitHub, GitLab и Bit hink beslutade att använda ordet "huvud" istället för ordet "mästare" för huvudgrenarna. I Git, som tidigare, fortsätter att köra "git init"-kommandot för att skapa "master"-grenen som standard, men detta namn kan nu ändras. Till exempel, för att ändra namnet på den initiala grenen till "main" kan du använda kommandot:

    git config --global init.defaultBranch main

  • Lade till prestandaoptimeringar baserade på utseendet i commit-graph-filformatet, används för att optimera åtkomsten till commit-information, support Bloom filter, en probabilistisk struktur som tillåter falsk identifiering av ett saknat element, men utesluter utelämnandet av ett befintligt element. Den angivna strukturen låter dig avsevärt påskynda sökningen i ändringshistoriken när du använder kommandona "git log - " eller "git blame".
  • Kommandot "git status" ger information om hur den partiella kloningsoperationen fortskrider (sparse-checkout).
  • En ny inställning "diff.relative" har föreslagits för "diff"-familjen av kommandon.
  • När du kollar igenom "git fsck" utvärderas nu sorteringen av objektträdet och osorterade element identifieras.
  • Gränssnittet för att redigera känslig information i spårningsutgången har förenklats.
  • Stöd för att slutföra alternativ för kommandot "git switch" har lagts till i ingångskompletteringsskriptet.
  • "git diff" stöder nu överföring av argument i olika notationer ("git diff A..BC", "git diff A..BC...D", etc.).
  • Lade till möjligheten att specificera en anpassad elementmappning till kommandot "git fast-export --anonymize" för att finjustera utdata för att göra det mer felsökningsbart.
  • "git gui" låter dig öppna arbetsträd från den inledande dialogrutan.
  • "Fetch/clone"-protokollet implementerar möjligheten för servern att informera klienten om behovet av att ladda förberedda packfiler utöver de överförda packade objektdata.
  • Arbetet fortsatte med övergången till SHA-256-hashalgoritmen istället för SHA-1.

Källa: opennet.ru

Lägg en kommentar