lëshimi i sistemit të distribuar të menaxhimit të kodit burimor . Git është një nga sistemet më të njohura, të besueshme dhe me performancë të lartë për menaxhimin e versioneve, që ofron mjete fleksibile për zhvillimin jolinear, të bazuara në degëzimin dhe bashkimin e degëve. Për të siguruar integritetin e historisë dhe qëndrueshmërinë ndaj ndryshimeve "mbrapa në kohë" përdoret hashingu implicit i gjithë historisë së mëparshme në çdo commit, gjithashtu është e mundur vërtetimi me nënshkrime digjitale të etiketave dhe komiteve të veçanta.
Në krahasim me versionin e kaluar, versioni i ri përmban 317 ndryshime, të përgatitura nga 58 zhvillues, ndër të cilët 13 morën pjesë për herë të parë në zhvillim. Kryesoret :
- U shtua konfigurimi init.defaultBranch, i cili lejon zgjedhjen e një emri të rastësishëm për degën kryesore, e cila do të përdoret si standard. Konfigurimi u shtua për projektet, zhvilluesit e të cilëve nuk u lejojnë të harrojnë kujtimet e skllavërisë, dhe fjala "master" perceptohet si një nënkuptim ofendues ose sjell ndjenja vuajtjeje dhe faji të pa shlyer. , dhe morën vendimin që si standard në vend të fjalës "master" për degët kryesore të përdorin fjalën "main". Në Git, si më parë, kur ekzekutohet komanda "git init" ende krijohet dega "master" si standard, por ky emër tani mund të ndryshohet. Për shembull, për të ndryshuar emrin e degës fillestare në "main" mund të përdoret komanda:
git config --global init.defaultBranch main
- U shtuan optimizime të performancës, të bazuara në shfaqjen e formatit të skedarit commit-graph, i cili aplikohet për optimizimin e qasjes në informacionin rreth komiteteve, mbështetje , për një strukturë probabiliste, e cila lejon përcaktimin e gabuar të elementeve të munguar, por duke përjashtuar kalimin e elementeve ekzistuese. Kjo strukturë e specifikuar lejon të përshpejtojë konsiderueshëm kërkimin në historinë e ndryshimeve gjatë përdorimit të komandave "git log --" ose "git blame."
- Në komandën "git status" sigurohet shfaqja e informacionit mbi progresin e operacionit të klonimit të pjesshëm (sparse-checkout).
- Për komandat e familjes "diff" u propozuan një parametër i ri "diff.relative".
- Gjatë kontrollit përmes "git fsck" tani vlerësohet renditja e pemës së objekteve dhe zbulohet elementët e pa renditur.
- U thjeshtua ndërfaqja për redaktimin e informacionit konfidencial në daljen e gjurmës.
- Në skenarin e autokompletimit të hyrjes u shtua mbështetje për plotësimin e opsioneve të komandës "git switch."
- Në "git diff" u shtua mbështetje për kalimin e argumenteve në notacione të ndryshme ("git diff A..B C", "git diff A..B C...D" etj.).
- Në komandën "git fast-export --anonymize" u shtua mundësia për të caktuar një përshtatje të vetë elementeve për përshtatjen e daljes, për ta bërë atë më të përshtatshme për debugging.
- Në "git gui" u lejohet hapja e pemëve të punës nga dialogu fillestar.
- Në protokollin «fetch/clone» është implementuar mundësia për të informuar klientin nga serveri për nevojën e ngarkimit të paketave të përgatitura paraprakisht, përveç të dhënave të paketuara të objektit.
- Vazhdon puna për kalimin në algoritmin e hash-it SHA-256 në vend të SHA-1.
Burimi: opennet.ru
