Ngemuva kwezinyanga ezimbili zomsebenzi onzima, umphakathi wentuthuko we I-Git yethula i-Git version 2.51, isibuyekezo ukuthi Ihlanganisa izinguquko ezingama-506, lapho onjiniyela abangama-91 babambe iqhaza, angu-21 kuwo afake isandla okokuqala.
Lokhu kukhishwa kwethula ukuthuthukiswa okuklanyelwe ukuthuthukisa ukusebenza nokwenza lula ukuphathwa kwenqolobane, okuhlanganisa ukulungiselelwa kokusebenza kwe-git-push ne-git-fetch, kanye nezinguquko ezimbalwa eziya egatsheni elisha le-3.x.
I-Git 2.51 Izici Ezintsha Ezintsha
Enye yezinto ezinhle kakhulu ze-Git 2.51 yi- Ukuthuthukisa i-git push kanye nemiyalo yokulanda ye-git kumakhosombe anenani elikhulu lezithenjwa. Ukhiye walokhu kuthuthukiswa usekubuyekezweni kwenqwaba, ecubungula izixhumanisi eziningi ekwenziweni okukodwa kunengayodwana.
Ngenxa yalokhu kulungiselelwa, I-backend elungisekayo manje idlula i-backend yamafayela endabuko.Ekuhlolweni okunamakhosombe aqukethe izinkomba ezifika ku-10, ukusebenza kokulanda kwe-git kukhuphuke ngo-000x ukuze kuphindeke kwenzeke futhi okungu-22x kwamafayela, kuyilapho i-git push ithuthukiswa ngo-1.25x no-18x, ngokulandelana.
Enye into emisha ebalulekile iUkwethulwa kwalokho okubizwa ngamaphakheji e-cruft, yakhelwe ukugcina izinto ezingafinyeleleki ezingaxhumene namagatsha noma omaka. Lezi zinto, ezazihlakazekile ngaphambili, manje ingaphathwa ngamaphakheji ahlukenes, okwenza kube lula ukulawula futhi kunciphisa usayizi wezinkomba zamaphakheji amaningi (MIDX).
Nge new repack.MIDXMustContainCruft setting, i-Git iyagwema ukufaka lezi zinto ezikhombeni eziyinhlokoEzivivinyweni eziku-GitHub, lokhu kulungiselelwa kwehlise usayizi wenkomba ngo-38%, kwasheshisa ukubhala ngo-35%, nokufundwa okuthuthukisiwe ngo-5%.
Indlela entsha yokupakisha into
El umyalo we-git pack-objects uhlanganisa inketho ye--path-walk, esethula indlela entsha ukuhlela kabusha amafayela okupakisha. Esikhundleni sokucubungula izinto ngokusekelwe kuma-hashes azo, i-Git manje ingakwazi ukuphindaphinda ngokusebenzisa indlela yabo yefayela, ipakisha lezo ezabelana ngendawo efanayo ndawonye. Le ndlela iqeda isidingo sokuhlela kusengaphambili izinto futhi ibangele amafayili okupakisha amancane, asebenza kahle kakhulu.
Nale nguqulo futhi Ifomethi entsha yokushintshisana ngezimo zesihlahla esisebenzayo nezinkomba ezidalwe nge-Git Stash isimisiwe.. Manje sekungenzeka ukuthi uthumele futhi ungenise okufihliwe njengamagatsha noma omaka, okwenza kube lula ukususa izifunda kusuka ohlelweni olulodwa ukuya kwenye.
Isibonelo:
git stash export --to-ref refs/stashes/mi-stash git push origin refs/stashes/mi-stash git fetch origin '+refs/stashes/*:refs/stashes/*' git stash import refs/stashes/mi-stash
Ukuthuthukiswa kwemiyalelo yakudala
eziningana Imiyalo ye-Git ithole izibuyekezo ezifanele:
- I-git cat-file manje ibika izinto ezingekho namamojula angaphansi, abonisa izihlonzi esikhundleni sokumaka nje “akukho”.
- Izinzuzo ze-git log kusuka ekuthuthukisweni kwesihlungi se-Bloom, ukusheshisa ukusesha ngezindlela eziningi zamafayela.
- I-git switch kanye nemiyalo yokubuyisela i-git, ebhekwa njengokuhlola kusukela ngo-2019, ekugcineni izinzile njengezinye izindlela zesimanje zokuphuma kwe-git.
- Umyalo we-git whatchanged, olingana ne-git log -raw, uhoxisiwe futhi uzosuswa ku-Git 3.0.
- I-git for-each-ref ithola inketho ethi -start-after, yona kanye ne- -count evumela ukuhlukaniswa kokuphumayo.
- i-git merge kanye ne-git pull manje ihlanganisa inketho ye--compact-summary, ehlinzeka ngefomethi efingqiwe kakhudlwana.
Usekelo lwe-C99 nemithetho emisha yokunikela
I-Git iyaqhubeka nokujwayela ikhodi yayo nezici zezinga le-C99. Nakuba kudingeka isihlanganisi esihambisanayo kusukela ngo-2021, onjiniyela bahamba ngokucophelela ukuze balondoloze ukuhambisana nabahlanganisi abakusebenzisa kancane kuphela.
Ukwengeza, ushintsho olubalulekile lwethulwe kunqubomgomo yokunikela: Amapeshi manje angathunyelwa ngaphansi kwegama-mbumbulu, isinqumo esiqondaniswe nemithetho ye-Linux kernel futhi eklanyelwe ukunikeza ukuguquguquka okukhulu kubanikeli.
Ngibheke phambili ku-Git 3.0
El Ithimba labathuthukisi libuye labuyekeza umgwaqo waba yi-Git 3.0., lapho izinguquko ezimbili eziyinhloko zigqama khona: ukusetshenziswa okuzenzakalelayo kwe-SHA-256 njengesihlonzi sento nokwamukelwa kwefomethi elungisekayo yokugcina izinkomba zegatsha nomaka. Lokhu kuthuthukiswa kuhloswe ukuthuthukisa ukuphepha nokusebenza kahle ezindaweni zokugcina ezikhulayo neziyinkimbinkimbi.
Umthombo: https://lore.kernel.org