Lëshimi i sistemit të menaxhimit të kodit burimor Git 2.37

Ështe prezantuar versioni i sistemit tĂ« menaxhimit tĂ« kodit burimor Git 2.37. 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 zhvillim jo-linear, duke u bazuar nĂ« degĂ«zimin dhe bashkimin e degĂ«ve. PĂ«r tĂ« siguruar integritetin e historisĂ« dhe qĂ«ndrueshmĂ«ri ndaj ndryshimeve retroaktive, pĂ«rdoret hashing i implicit i tĂ«rĂ« historisĂ« paraprake nĂ« çdo commit, gjithashtu Ă«shtĂ« e mundur verifikimi me nĂ«nshkrime digjitale tĂ« zhvilluesve pĂ«r etiketat dhe commitĂ«t individualĂ«.

Në krahasim me versionin e kaluar, në këtë version janë pranuar 395 ndryshime, përgatitur nga 75 zhvillues, nga të cilët 20 e kanë marrë pjesë për herë të parë në zhvillim. Novitetet kryesore janë:

  • Mekanizmi i indekseve tĂ« pjesshme (sparse index) Ă«shtĂ« pĂ«rgatitur pĂ«r pĂ«rdorim tĂ« gjerĂ«, duke mbuluar vetĂ«m njĂ« pjesĂ« tĂ« depozitĂ«s. Indekset e pjesshme lejojnĂ« rritjen e performancĂ«s dhe kursimin e hapĂ«sirĂ«s nĂ« depozitat ku kryhen operacione tĂ« klonimit tĂ« pjesshĂ«m (sparse-checkout) ose punohet me njĂ« kopje tĂ« papĂ«rfunduar tĂ« depozitĂ«s. NĂ« kĂ«tĂ« version pĂ«rfundoi puna pĂ«r integrimin e indekseve tĂ« pjesshme nĂ« komandat "git show", "git sparse-checkout" dhe "git stash". Fitimi mĂ« i dukshĂ«m nĂ« performancĂ« nga pĂ«rdorimi i indekseve tĂ« pjesshme vĂ«rehet nĂ« komandĂ«n "git stash", ku shpejtĂ«sia e ekzekutimit nĂ« disa raste Ă«shtĂ« rritur me deri nĂ« 80%.
  • ËshtĂ« zbatuar njĂ« mekanizĂ«m i ri "cruft packs" pĂ«r paketimin e objekteve tĂ« paprekshme (unreachable), pĂ«r tĂ« cilat nuk ka referenca nĂ« depo (nuk referohen nga degĂ«t ose etiketat). Objektet e paprekshme hiqen nga mbledhĂ«si i plehrave, por deri nĂ« heqje mbeten pĂ«r njĂ« periudhĂ« tĂ« caktuar nĂ« depo pĂ«r tĂ« eliminuar gjendjet e garĂ«s. PĂ«r tĂ« ndjekur periudhĂ«n e objektĂ«ve tĂ« paprekshme Ă«shtĂ« e nevojshme lidhja e etiketave me kohĂ«n e modifikimit tĂ« kĂ«tyre objekteve, çka nuk lejon ruajtjen e tyre nĂ« njĂ« file pack, ku tĂ« gjitha objektet kanĂ« njĂ« kohĂ« tĂ« pĂ«rbashkĂ«t modifikimi. Ruajtja e mĂ«parshme e çdo objekti nĂ« njĂ« file tĂ« veçantĂ« shkaktonte probleme kur kishte numĂ«r tĂ« madh objektesh tĂ« paprekshme tĂ« reja, tĂ« cilat ende nuk pĂ«rmbushnin kushtet pĂ«r heqje. Mekanizmi i propozuar "cruft packs" lejon ruajtjen e tĂ« gjithĂ« objekteve tĂ« paprekshme nĂ« njĂ« file pack, ndĂ«rsa tĂ« dhĂ«nat mbi kohĂ«n e modifikimit tĂ« çdo objekti pasqyrohen nĂ« njĂ« tabelĂ« tĂ« veçantĂ«, e cila ruhet nĂ« njĂ« file me zgjerimin ".mtimes".
  • PĂ«r Windows dhe macOS Ă«shtĂ« realizuar njĂ« mekanizĂ«m tĂ« integruar pĂ«r ndjekjen e ndryshimeve nĂ« sistemin e skedarĂ«ve, duke lejuar tĂ« shmanget pĂ«rshkrimi i tĂ«rĂ« katalogut tĂ« punĂ«s gjatĂ« kryerjes sĂ« operacioneve tĂ« tilla si "git status". MĂ« parĂ«, pĂ«r ndjekjen e ndryshimeve pĂ«rmes hook-Ă«ve, mund tĂ« ishin lidhur mjete tĂ« jashtme pĂ«r ndjekjen e ndryshimeve nĂ« FS, si Watchman, por kjo kĂ«rkonte instalimin e programeve shtesĂ« dhe konfigurimin e tyre. Tani kjo funksionalitet Ă«shtĂ« futur dhe mund tĂ« aktivizohet me komandĂ«n "git config core.fsmonitor true".
  • NĂ« komandĂ«n "git sparse-checkout" Ă«shtĂ« shpallur e vjetruar mbĂ«shtetje pĂ«r modalitetin alternativ "—cone" tĂ« metodĂ«s sĂ« pĂ«rcaktimit tĂ« shablloneve pĂ«r klonimin e pjesshĂ«m, qĂ« lejon nĂ« pĂ«rcaktimin e pjesĂ«s sĂ« depozites qĂ« i nĂ«nshtrohet operacionit tĂ« klonimit pĂ«r tĂ« listuar skedarĂ« tĂ« veçantĂ« duke pĂ«rdorur sintaksĂ«n e "gitignore", qĂ« nuk lejon pĂ«rdorimin e indekseve tĂ« pjesshme pĂ«r optimizim.
  • ËshtĂ« rritur fleksibiliteti i konfigurimit tĂ« thirrjes fsync() pĂ«r shpĂ«rndarjen e ndryshimeve nĂ« disk. NĂ« parametrin "core.fsyncMethod" Ă«shtĂ« shtuar mbĂ«shtetje pĂ«r strategjinĂ« e sinkronizimit "batch", e cila lejon pĂ«rshpejtimin e punĂ«s gjatĂ« shkrimit tĂ« numrit tĂ« madh tĂ« skedarĂ«ve tĂ« veçantĂ« duke akumuluar ndryshimet nĂ« memorie tĂ« pĂ«rkohshme, qĂ« shpĂ«rndahen me njĂ« thirrje fsync(). NjĂ« test i kryer, nĂ« tĂ« cilin u shtuan 500 skedarĂ« me komandĂ«n "git add", kur ishte aktivizuar modaliteti i ri, u realizua pĂ«r 0.15 sekonda, ndĂ«rsa pĂ«r thirrjen fsync() pĂ«r secilin skedare shkoi pĂ«r 1.88 sekonda, ndĂ«rsa pa pĂ«rdorimin e fsync - 0.06 sekonda.
  • NĂ« komandat qĂ« kalojnĂ« nĂ«pĂ«r degĂ«, si "git log" dhe "git rev-list", Ă«shtĂ« shtuar opsioni "—since-as-filter=X", i cili lejon pĂ«rjashtimin e informacionit mbi commitĂ«t, koha e krijimit tĂ« tĂ« cilĂ«ve Ă«shtĂ« mĂ« e vjetĂ«r se "X". NĂ« avancim tĂ« opsionit "—since", komanda e re Ă«shtĂ« realizuar si njĂ« filtĂ«r, qĂ« nuk ndalon kalimin pas commit-it tĂ« parĂ«, mĂ« tĂ« vjetĂ«r se koha e caktuar.
  • NĂ« komandĂ«n "git remote", kur Ă«shtĂ« caktuar flamuri "-v", Ă«shtĂ« siguruar dalja e informacionit pĂ«r klonĂ«t e pjesshĂ«m tĂ« depozitĂ«s.
  • Shto Ă«shtĂ« shtuar konfigurimi «transfer.credentialsInUrl», i cili mund tĂ« marrĂ« vlera «warn», «die» dhe «allow». NĂ« rast se nĂ« parametrin «remote.<name>.url» jepen akreditimet nĂ« tekst tĂ« hapur, pĂ«rpjekja pĂ«r tĂ« realizuar operacionet «fetch» ose «push» do tĂ« pĂ«rfundojĂ« me njĂ« gabim, nĂ«se konfigurimi «transfer.credentialsInUrl» ka vlerĂ«n «die», ose me njĂ« paralajmĂ«rim, nĂ«se Ă«shtĂ« vendosur vlera «warn».
  • PĂ«r default, Ă«shtĂ« aktivizuar njĂ« implementim i ri i modĂ«s interaktive tĂ« komandĂ«s «git add -i», e shkruar nga Perl nĂ« C.

Burimi: opennet.ru

Bleni hostim tĂ« besueshĂ«m pĂ«r faqe me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Bleni hostim tĂ« besueshĂ«m pĂ«r faqe me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster