Lëshimi i sistemit të menaxhimit të kodit të burimit Git 2.48

Lëshimi i sistemit të shpërndarë të menaxhimit të kodit burimor Git 2.48 është publikuar. Git ofron performancë të lartë dhe siguron mjete për zhvillim të jo-linearit, të bazuar në ndarjen dhe bashkimin e degëve. Për të siguruar integritetin e historisë dhe qëndrueshmërinë ndaj ndryshimeve 'me pas', përdoren hash-im të fshehtë të gjithë historisë së kaluar në çdo commit, si dhe nënshkrime digjitale nga zhvilluesit për etiketa dhe commit-e të veçanta. Kodi Git shpërndahet nën licencën GPLv2+.

Krahasuar me lëshimin e kaluar, versioni i ri pranon 605 ndryshime, të përgatitura me pjesëmarrjen e 93 zhvilluesve, nga të cilët 35 marrin pjesë për herë të parë në zhvillim. Ndryshimet kryesore janë:

  • E mundĂ«suar ndĂ«rtimi me sistemin e ndĂ«rtimit Meson, pĂ«rveç GNU Make dhe CMake. Tani pĂ«r ndĂ«rtimin e Git-it, mund tĂ« pĂ«rdoret komandĂ« 'meson setup build && ninja -C build'. VĂ«rehet se Makefile qĂ« pĂ«rdoret me GNU Make Ă«shtĂ« rritur nĂ« 3887 rreshta dhe nuk Ă«shtĂ« aq i thjeshtĂ« sa do tĂ« dĂ«shirohej. Mjetet e Meson e pĂ«rmirĂ«sojnĂ« punĂ«n me sistemin e ndĂ«rtimit, janĂ« tĂ« pĂ«rshtatshme pĂ«r ndĂ«rtim multi-platformĂ« dhe e bĂ«jnĂ« ndĂ«rtimin mĂ« tĂ« aksesueshĂ«m pĂ«r fillestarĂ«t ose zhvilluesit pa pĂ«rvojĂ« me mjetin Make. Nuk Ă«shtĂ« planifikuar tĂ« ndĂ«rpritet mbĂ«shtetje pĂ«r Make dhe CMake nĂ« tĂ« ardhmen e afĂ«rt.
  • Shtuar opsionet e ndĂ«rtimit qĂ« lejojnĂ« pĂ«rdorimin e zbatimeve alternative tĂ« hash SHA-1 pĂ«r llogaritjen e kontroll-summave qĂ« pĂ«rdoren pĂ«r verifikimin e integritetit tĂ« blloqeve tĂ« dhĂ«nash nĂ« skedarĂ«t pack. Performanca e llogaritjes sĂ« kontroll-summave Ă«shtĂ« shumĂ« e rĂ«ndĂ«sishme, pĂ«r shembull, rreth 78% e kohĂ«s sĂ« procesorit shpenzohet pĂ«r llogaritjen e tyre kur klonohet njĂ« depo me bĂ«rthamĂ«n Linux. Zbatimi i pĂ«rdorur si parazgjedhje pĂ«rfshin kontrolle tĂ« shtesave pĂ«r kolizione dhe mbrojtje nga sulmet ndaj SHA-1, si SHAttered dhe Shambles. NjĂ« mbrojtje e tillĂ«, e cila konsumon burime shtesĂ«, ka kuptim vetĂ«m kur pĂ«rdoret SHA-1 pĂ«r qĂ«llime kriptografike dhe Ă«shtĂ« e panevojshme pĂ«r verifikimin e integritetit tĂ« tĂ« dhĂ«nave indeksuese.

    Për ndërtimin e Git me një zbatim më të shpejtë të SHA-1, i papërshtatshëm për kriptosistemit, ofrohet një seri opsionesh *_UNSAFE, si 'OPENSSL_SHA1_UNSAFE'. Në GitHub, ndërtimi me SHA-1 të thjeshtuar e ndihmoi të rritet performanca e operacioneve të nxjerrjes dhe klonimit të dhënave me 10-13%.

  • Shtuar mundĂ«sia e pĂ«rdorimit tĂ« opsionit '—remerge-diff' nĂ« komandĂ«n 'range-diff', i cili lejon shfaqjen e diferencave midis rezultatit tĂ« pĂ«rgjithshĂ«m tĂ« bashkimit dhe tĂ« dhĂ«nave aktuale qĂ« paraqiten nĂ« commit pas pĂ«rpunimit tĂ« komandĂ«s 'merge'. Kur pĂ«rdoret opsioni '—remerge-diff', diferencat mes zgjidhjeve tĂ« konflikteve nuk ndahen pĂ«r çdo degĂ« prind, por shfaqen diferencat e pĂ«rgjithshme midis skedarit qĂ« ka konflikte bashkimi dhe skedarit qĂ« ka zgjidhur konfliktet. NĂ« kontekstin e komandĂ«s 'range-diff', opsioni i ri mund tĂ« jetĂ« i dobishĂ«m pĂ«r tĂ« krahasuar grupe commit-esh pas zhvendosjes sĂ« rendit tĂ« commit-eve me komandĂ«n 'rebase' me opsionin '—rebase-merges'.
  • Shtuar mundĂ«sia e ekzekutimit tĂ« grupeve tĂ« testeve tĂ« Git me pĂ«rfshirjen e modit pĂ«r identifikimin e rrjedhjeve tĂ« memories. Pasi qĂ« Git ofron mjete qĂ« pĂ«rfundojnĂ« punĂ«n pas pĂ«rfundimit tĂ« funksionit tĂ« thirrur, rrjedhjet e memories mĂ« parĂ« nuk konsideroheshin njĂ« problem tĂ« madh. Nevoja pĂ«r tĂ« eliminuar plotĂ«sisht rrjedhjet e memories Ă«shtĂ« bĂ«rĂ« e rĂ«ndĂ«sishme pas fillimit tĂ« punĂ«s pĂ«r aktivitete tĂ« veçanta nĂ« njĂ« bibliotekĂ« tĂ« ndarĂ«, e cila mund tĂ« pĂ«rdoret nĂ« procese qĂ« punojnĂ« pĂ«r njĂ« kohĂ« tĂ« gjatĂ«.
  • Ka filluar formimi i listĂ«s sĂ« mĂ«nyrave dhe mundĂ«sive tĂ« vjetra, mbĂ«shtetjen e tĂ« cilave planifikohet tĂ« ndalet nĂ« tĂ« ardhmen. Pritet qĂ« heqja e funksionaliteteve tĂ« vjetruara tĂ« ndodhi nĂ« lĂ«shimin e Git 3.0, i cili do tĂ« pĂ«rmbajĂ« ndryshime qĂ« shkelin pĂ«rputhshmĂ«rinĂ« mbrapa.
  • Ka vazhduar optimizimi i funksionit 'git for-each-ref', qĂ« kĂ«rkon njĂ« listĂ« referencash nĂ« depo. Optimizimi, qĂ« bashkon pĂ«rpunuesit pĂ«r filtrimin e referencave dhe formatimin e daljes, tani zbatohet jo vetĂ«m pĂ«r daljen e pa renditur, por edhe kur tregohet opsioni '—sort'.
  • PĂ«rmirĂ«suar zbatimi i backend-it 'reftable' me ruajtje bllokuese pĂ«r ruajtjen efikase tĂ« referencave tĂ« degĂ«ve dhe etiketeve nĂ« depo. Reftable lejon pĂ«rshpejtimin e kĂ«rkimeve, leximin dhe shkrimin nĂ« depo me numĂ«r shumĂ« tĂ« madh referencash. NĂ« versionin e ri Ă«shtĂ« ndĂ«rprerĂ« pĂ«rdorimi i disa API-ve ndihmĂ«se pĂ«r tĂ« eklipsuar bibliotekĂ«n libgit nga varĂ«sitĂ« ndĂ«rtuese. ËshtĂ« zbatuar pĂ«rpunimi adaptiv i gabimeve, tĂ« kthyera nga funksionet e alokimit tĂ« memories (mungesa e memories tani nuk shkakton ndĂ«rprerjen e punĂ«s). Operacionet e ndĂ«rtimit tĂ« referencave janĂ« pĂ«rshpejtuar dhe konsumi i memories Ă«shtĂ« reduktuar.
  • NĂ« zbatimin e klonimit tĂ« pjesshĂ«m, u zgjidhĂ«n problemet qĂ« shkaktonin ciklim dhe dĂ«mtimin e repo-it pas ekzekutimit tĂ« komandĂ«s "git gc".
  • Kur ekzekutohet komanda "git fetch ", nĂ« rast se "refs/remotes//HEAD" mungon nĂ« sistemin lokal dhe ekziston nĂ« anĂ«n tjetĂ«r njĂ« degĂ« qĂ« pĂ«rcakton HEAD, "refs/remotes//HEAD" tani ridrejtohet nĂ« kĂ«tĂ« degĂ«. PĂ«r menaxhimin e sinkronizimit tĂ« "refs/remotes//HEAD" me vlerĂ«n e HEAD nĂ« anĂ«n tjetĂ«r tĂ« lidhjes, Ă«shtĂ« shtuar konfigurimi remote..followRemoteHEAD.
  • Shtuar konfigurimi "remote..serverOption" i ngjashĂ«m me opsionin e linjĂ«s sĂ« komandĂ«s "—serverOption=".
  • NĂ« komandĂ«n "git rebase --rebase-merges" Ă«shtĂ« siguruar pĂ«rdorimi i emrave tĂ« degĂ«ve si etiketa sa mĂ« shumĂ« tĂ« jetĂ« e mundur.
  • NĂ« komandat ‘git notes add’ dhe ‘git notes append’ Ă«shtĂ« shtuar flag ‘-e’, qĂ« hap shĂ«nimin nĂ« njĂ« redaktues tĂ« jashtĂ«m teksti tĂ« specifikuar pĂ«rmes variablĂ«s sĂ« mjedisit GIT_EDITOR.
  • PĂ«rmirĂ«suar kompatibiliteti me GCC 15 dhe standardin C23.
  • NdĂ«rprerĂ« mbĂ«shtetje pĂ«r versionet e vjetra tĂ« libcURL dhe Perl.

Burimi: opennet.ru

Bli njĂ« hosting tĂ« besueshĂ«m pĂ«r faqet me mbrojtje DDoS, VPS VDS serverĂ« đŸ”„ Bli njĂ« hosting tĂ« besueshĂ«m pĂ«r faqet me mbrojtje DDoS, VPS VDS serverĂ« | ProHoster