Git 2.37 tashmë është lëshuar dhe këto janë lajmet e tij

Nisja e versioni i ri i Git 2.37, e cila është një nga sistemet më të njohura të kontrollit të versioneve, softuer i besueshëm dhe me performancë të lartë që ofron mjete zhvillimi fleksibël jolinear të bazuar në pirunët dhe bashkimet e pirunëve.

Për të siguruar integritetin e historisë dhe rezistencën ndaj ndryshimeve, hash-i i nënkuptuar "i prapambetur" i të gjithë historisë së mëparshme përdoret në çdo kryerje, është gjithashtu e mundur të verifikohen nënshkrimet dixhitale të etiketave individuale dhe zhvilluesve të angazhimit.

Git 2.37 Karakteristikat kryesore të reja

Krahasuar me versionin e mëparshëm, 395 ndryshime u pranuan në versionin e ri, përgatitur me pjesëmarrjen e 75 zhvilluesve, nga të cilët 20 morën pjesë në zhvillim për herë të parë.

Në këtë version të ri theksohet se mekanizmi i indekseve të pjesshme (indeksi i rrallë), i cili mbulon vetëm një pjesë të depove, se është përgatitur për përdorim të gjerë. Indekset e pjesshme mund të përmirësojnë performancën dhe të kursejnë hapësirë ​​në depo që kryejnë operacione të pjesshme të klonimit (arka e rrallë) ose që funksionojnë në një kopje jo të plotë të depove.

Versioni i ri përfundon punën e integrimi i indekseve të pjesshme në komanda "git show", "git sparse-checkout" dhe "git stash". Fitimi më i dukshëm i performancës nga përdorimi i indekseve të pjesshme është në komandën "git stash", e cila është deri në 80% më e shpejtë në disa situata.

Një ndryshim tjetër që bie në sy është se është zbatuar një mekanizëm i ri i "paketave të pastra". për të paketuar objekte të paarritshme që nuk janë të referuara në depo (të pa referuara nga degët ose etiketat). Mbledhësi i plehrave fshin objekte të paarritshme, por ato mbeten në depo për një kohë të caktuar përpara se t'i fshijë për të shmangur kushtet e garës. Për të gjurmuar periudhën e objekteve të paarritshme, kërkohet lidhja, ato etiketohen me kohën e ndryshimit të objekteve të ngjashme, gjë që nuk lejon që ato të ruhen në një skedar pako, në të cilin të gjithë objektet kanë një kohë të përbashkët modifikimi.

Duke ruajtur çdo objekt të përdorur më parë në një skedar të veçantë, skedari shkaktoi probleme në prani të një numri të madh objektesh të reja të paarritshme, jo ende. Mekanizmi i propozuar "cruft pack" lejon që të gjitha objektet e paarritshme të ruhen në një skedar pako dhe të dhënat për kohën e modifikimit të secilit objekt pasqyrohen në një tabelë të veçantë të ruajtur në një skedar me ekstensionin ".mtimes".

Për Windows dhe macOS, ekziston një mekanizëm i integruar për të mbajtur gjurmët e ndryshimeve në sistemin e skedarëve, të cilat eliminon nevojën për të renditur të gjithë drejtorinë e punës kur kryeni operacione si "git status". Më parë, për të gjurmuar ndryshimet nëpërmjet grepave, mund të lidhje shërbime të jashtme të përcjelljes së ndryshimeve të sistemit të skedarëve, të tilla si Watchman, por kjo kërkonte instalimin e programeve dhe konfigurimeve shtesë. Ky funksionalitet tani është i integruar dhe mund të aktivizohet me "git config core.fsmonitor true".

Komanda "git sparse-checkout" ka hequr dorë nga mbështetja për një alternativë ndaj modalitetit "--cone" Përkufizimi i shabllonit për klonimin e pjesshëm, i cili lejon, kur përcaktoni pjesën e depove që i nënshtrohet operacionit të klonimit, renditjen e skedarëve individualë duke përdorur sintaksën ".gitignore", e cila nuk lejon përdorimin për optimizimin e indekseve të pjesshme.

Nga ndryshimet e tjera që bien në sy:

  • Fleksibilitet i përmirësuar në konfigurimin e thirrjes fsync() për të larë ndryshimet në disk.
  • U shtua mbështetje për strategjinë e sinkronizimit "batch" në parametrin "core.fsyncMethod", i cili përshpejton punën kur shkruani një numër të madh skedarësh të veçantë duke grumbulluar ndryshime në cache-in e rishkrimit të pastruar nga një thirrje e vetme fsync().
  • Komandat kalimtare si "git log" dhe "git rev-list" tani kanë opsionin "–since-as-filter=X" për të filtruar informacionin rreth kryerjeve më të vjetra se "X".
  • Në komandën "git remote", specifikimi i flamurit "-v" jep informacion rreth kloneve të pjesshme të depove.
  • U shtua cilësimi "transfer.credentialsInUrl", i cili mund të marrë vlerat "paralajmëroj", "vdes" dhe "lejoj". Nëse parametri “remote. .url specifikon kredencialet në tekst të thjeshtë, një përpjekje për të kryer operacione "get" ose "push" do të dështojë nëse cilësimi "transfer.credentialsInUrl" është vendosur në "die" ose një paralajmërim nëse është vendosur në "warn".
  • Si parazgjedhje, përdoret zbatimi i modalitetit të ri interaktiv të komandës "git add -i", i rishkruar nga Perl në C.

Më në fund nëse jeni të interesuar të dini më shumë për të, ju mund të kontrolloni detajet Në lidhjen vijuese.


Lini komentin tuaj

Adresa juaj e emailit nuk do të publikohet. Fusha e kërkuar janë shënuar me *

*

*

  1. Përgjegjës për të dhënat: Miguel Ángel Gatón
  2. Qëllimi i të dhënave: Kontrolloni SPAM, menaxhimin e komenteve.
  3. Legjitimimi: Pëlqimi juaj
  4. Komunikimi i të dhënave: Të dhënat nuk do t'u komunikohen palëve të treta përveç me detyrim ligjor.
  5. Ruajtja e të dhënave: Baza e të dhënave e organizuar nga Occentus Networks (BE)
  6. Të drejtat: Në çdo kohë mund të kufizoni, rikuperoni dhe fshini informacionin tuaj.