ISapling, inkqubo yolawulo lwekhowudi yomthombo ehambelana neGit

ukutshiza

I-Sapling igxininisa ukusetyenziswa ngokulula ngelixa unyusa ukuya kwezona ndawo zokugcina ezinkulu zehlabathi.

Facebook ityhilwe ngeposi yebhlog inkqubo yolawulo lwekhowudi yomthombo Ukupakisha isetyenziswe kuphuhliso lweeprojekthi zangaphakathi zenkampani. Inkqubo ijolise ekunikezeni ujongano lolawulo loguqulelo iqhelekile enokukala ukuya kwiindawo zokugcina ezinkulu kakhulu ezithatha amashumi ezigidi zeefayile, ukuzibophelela, kunye namasebe.

Umbono ophambili wenkqubo kukuba ngokunxibelelana nenxalenye ekhethekileyo yeseva ebonelela ngogcino lokugcina, yonke imisebenzi isikali esekwe kwinani leefayile eneneni esetyenziswa kwikhowudi umphuhlisi asebenza kuyo, kwaye abaxhomekeke kubungakanani bubonke bendawo yokugcina.

Ngokomzekelo, umphuhlisi unokusebenzisa inxalenye encinci yekhowudi ukusuka kwindawo yokugcina enkulu, kwaye kuphela le nxalenye encinci, kwaye kungekhona yonke indawo yokugcina, iya kudluliselwa kwinkqubo yabo. Uluhlu olusebenzayo luzaliswe ngamandla, njengoko iifayile zogcino zifikeleleka, ezithi, kwelinye icala, zikuvumela ukuba ukhawulezise umsebenzi ngenxalenye yakho yekhowudi, kodwa kwelinye icala, iyayicotha xa ufikelela kuyo. okokuqala kwiifayile ezintsha kwaye ifuna ufikelelo rhoqo kwinethiwekhi (ebonelelwe ngokwahlukeneyo kunye nemowudi yokulungiselela ukuzibophelela).

Ukongeza kwi-adaptive data loading, I-Sapling iphinda isebenzise ukulungiswa okujoliswe ekunciphiseni umthwalo wolwazi kunye nembali yotshintsho. (umzekelo, i-3/4 yedatha kwindawo yokugcina kunye ne-Linux kernel yimbali yokutshintsha).

Ukuze usebenze ngokufanelekileyo ngembali yotshintsho, idatha ehambelana nayo igcinwe kwimbono ehlukeneyo, ekuvumela ukuba ukhuphele iindawo ezahlukileyo zegrafu yokuzinikela kumncedisi. Umxhasi unokubuza umncedisi ngolwazi malunga nobudlelwane bobungqina obuninzi kunye nokukhuphela kuphela inxalenye efunekayo yegrafu.

Iprojekthi ibisenziwa kule minyaka ili-10 idlulileyo kwaye yadalwa ukucombulula iingxaki xa kufikelela kwii-monolithic repositories ezinkulu kakhulu kunye ne-master branch, apho umkhuba wokusebenzisa "rebase" operation endaweni "yokudibanisa" yenziwa.

Ngelo xesha, kwakungekho zisombululo ezivulekileyo zokusebenza kunye nogcino olunjalo, kwaye iinjineli ze-Facebook zagqiba ekubeni zenze inkqubo entsha yokulawula uguqulelo oluya kuhlangabezana neemfuno zenkampani, kunokuba iiprojekthi zohlulwe zibe ziincinci ezincinci, eziza kukhokelela kulawulo olunzima lokuxhomekeka ( ngaxeshanye, ukusombulula ingxaki efanayo, iMicrosoft yenza umaleko weGVFS).

Ekuqaleni, uFacebook wasebenzisa inkqubo yeMercurial kwaye iprojekthi yeSapling yaphuhliswa ekuqaleni njengokongeza kwiMercurial. Ngokuhamba kwexesha, inkqubo yaba yiprojekthi ezimeleyo ngeprothokholi yayo, ifomathi yogcino, kunye ne-algorithms, eyathi yandiswa ngokukwazi ukusebenzisana nogcino lweGit.

Ngomsebenzi, umgca womyalelo oluncedo "sl" uyacetywa, osebenzisa iikhonsepthi eziqhelekileyo, ukuhamba komsebenzi, kunye nojongano oluqhelekileyo kubaphuhlisi abaqhelene neGit kunye neMercurial. Isigama kunye nemiyalelo kwiSapling yahluke kancinane kwiGit kwaye ikufuphi neMercurial.

Phakathi kweempawu ezongezelelweyo yeSapling, ibalaselisa i inkxaso "yokubhalisa ngobuchule" (smartlog), ekuvumela ukuba ujonge ngokubonakalayo imeko yendawo yakho yokugcina, qaqambisa olona lwazi lubalulekileyo kwaye ucofe iinkcukacha ezincinci. Umzekelo, xa usenza usetyenziso lwe-sl ngaphandle kweengxoxo, kuphela iinguqu zakho zasekuhlaleni ezibonisiweyo (ezingaphandle ziwile), ubume bamasebe angaphandle, iifayile ezitshintshileyo, kunye neenguqulelo ezintsha zokuzibophelela ziyaboniswa. Ukongeza, ujongano lwewebhu olusebenzayo lubonelelwe ukukhangela ngokukhawuleza ngelog ehlakaniphile, ukutshintsha umthi, kunye nokuzibophelela.

Olunye uphuculo oluphawulekayo kwiSapling kukuba yenza inkqubo yokulungisa kunye nokuhlalutya iimpazamo kunye nokubuyela kwimeko yangaphambili ibe lula kakhulu. Umzekelo, imiyalelo "sl undo", "sl redo", "sl uncommit" kunye "sl unmend" bacetyiswe ukubuyisela umva imisebenzi emininzi, "sl hide" kunye "sl unhide" ekuzifihleni okwethutyana kunye nokukhangela okusebenzisanayo. ithi iSapling ikwaxhasa ingqikelelo yesitaki sokuzibophelela, esikuvumela ukuba uququzelele ukuphonononga inyathelo ngenyathelo ngokucalula ukusebenza okuntsokothileyo kube kutshintsho oluncinci, oluqondakalayo ngakumbi (ukusuka kwisakhelo esisisiseko ukuya kwinto yokugqibela).

Ngokwahlukeneyo, indawo yomncedisi yaphuhliselwa umsebenzi osebenzayo okude ngeendawo zokugcina kunye nenkqubo yefayile yenyani yokusebenza kunye nenxalenye yendawo yendawo yogcino njengokungathi yindawo yokugcina yokugcina (umphuhlisi ubona yonke indawo yokugcina, kodwa kuphela idatha eceliwe ikhutshelwe kwinkqubo yendawo, efunyenweyo).

Ikhowudi yala macandelo asetyenziswa kwiziseko zophuhliso zikaFacebook ayikavulwa okwangoku, kodwa inkampani ithembise ukuyikhulula kwixa elizayo. Nangona kunjalo, umncedisi we-Mononoke (kwi-Rust) kunye ne-VFS EdenFS (kwi-C ++) iprototypes sele ifunyenwe kwindawo yokugcina iSapling. Ezi zixhobo zinokuzikhethela kwaye umxhasi weSapling wanele ukusebenza ngawo, oxhasa i-cloning ye-Git yokugcina, isebenzisana ne-Git LFS-based servers, kunye nokusebenza ngeenginginya ze-git ezifana ne-GitHub.

Iiplagi ezininzi zilungiselelwe iSapling, kubandakanywa i-ReviewStack interface yokuphonononga utshintsho (ikhowudi phantsi kwe-GPLv2), ekuvumela ukuba uqhube izicelo zokutsalwa kwi-GitHub kwaye usebenzise i-stack view yokutshintsha.

Ukuba unomdla wokwazi ngakumbi ngayo, ungajonga iinkcukacha Kule khonkco ilandelayo.


Shiya uluvo lwakho

Idilesi yakho ye email aziyi kupapashwa. ezidingekayo ziphawulwe *

*

*

  1. Uxanduva lwedatha: UMiguel Ángel Gatón
  2. Injongo yedatha: Ulawulo lwe-SPAM, ulawulo lwezimvo.
  3. Umthetho: Imvume yakho
  4. Unxibelelwano lwedatha: Idatha ayizukuhanjiswa kubantu besithathu ngaphandle koxanduva lomthetho.
  5. Ukugcinwa kweenkcukacha
  6. Amalungelo: Ngalo naliphi na ixesha unganciphisa, uphinde uphinde ucime ulwazi lwakho.