- I-Git iwuhlelo lokulawula inguqulo esabalalisiwe oluvumela umlando wendawo ophelele, ukusebenzelana okungaxhunyiwe ku-inthanethi, nokuphathwa koshintsho okuphumelelayo.
- Ukuhlanganisa nokuhlanganisa kusiza umsebenzi ofanayo ezicini nokuhlanganiswa nokuxazulula izingxabano ezihlakaniphile.
- Amathuluzi athuthukile afana nokuhlehliswa kabusha, ukusetha kabusha, nokuhlukanisa kabili kukuvumela ukuthi uhlanze umlando, uhlehlise izinguquko, futhi uthole ukuhlehla ukuze uthuthukise ukulungiswa.
I-Git iyisistimu yokulawula inguqulo entsha eshintshe indlela abathuthukisi abasebenzisana ngayo kumaphrojekthi esofthiwe. Ngezici zayo eziqinile, ukuhlanganiswa okungenamthungo, kanye nokulula kokusetshenziswa, i-Git isibe yindlela ekhethwayo yokuphatha ikhodi yomthombo kanye nokulandelela izinguquko. Kulo mhlahlandlela ophelele, sizohlola umhlaba we-Git, sihlaziye izici zayo ezibalulekile, izinzuzo, kanye nemikhuba emihle kakhulu. Kungakhathaliseki ukuthi ungumthuthukisi onolwazi noma usanda kuqala uhambo lwakho lokuhlela, lesi sihloko sizokunikeza ulwazi kanye nesipiliyoni esidingekayo ukuze usebenzise amandla e-Git ngempumelelo.
Yini iGit?
I-Git iyisistimu yokulawula inguqulo esakazwayo (i-DVCS) eyenzelwe ukulandelela izinguquko kukhodi yomthombo ngesikhathi sokuthuthukiswa kwesofthiwe. Yadalwa nguLinus Torvalds ngo-2005, i-Git ithole ukuthandwa okukhulu emphakathini wonjiniyela ngenxa yesivinini sayo, ukusebenza kahle, kanye nokuguquguquka. Ngokungafani nezinhlelo zokulawula inguqulo zendabuko ezihlanganisiwe , i-Git ivumela abathuthukisi ukuthi bagcine ikhophi ephelele yekhodi endaweni, ibavumele ukuthi basebenze bengaxhunyiwe ku-inthanethi futhi basebenzisane kalula namanye amalungu eqembu.
I-Git Basics
Ifaka i-Git
Ngaphambi kokuthi ungene ezweni le-Git, udinga ukuyifaka ohlelweni lwakho. I-Git iyahambisana ne-Windows, i-macOS, ne-Linux. Ukuze ufake i-Git, landela imiyalelo enikezwe kuwebhusayithi esemthethweni ye-Git . Qiniseka ukuthi unenguqulo yakamuva ye-Git ukuze uzuze kuzici zayo ezintsha kanye nokuthuthukiswa.
Ukuqala indawo yokugcina ye-Git
Ukuze uqale ukusebenzisa i-Git, udinga ukuqalisa indawo yokugcina idatha kufolda yakho yephrojekthi. Zulazulela kufolda oyifunayo usebenzisa umugqa womyalo bese usebenzisa umyalo olandelayo:
git init
Lo myalo udala uhla lwemibhalo olufihliwe olubizwa ngokuthi .git equkethe wonke amafayela adingwa yi-Git ukulandelela izinguquko nokuphatha izinguqulo. Kubalulekile ukuqaphela ukuthi i-Git isebenza kuleveli yohla lwemibhalo, ikuvumela ukuthi ube namakhosombe amaningi e-Git ngaphakathi kohla lwemibhalo lomzali oyedwa.
Ukulungiselela nokuqinisekisa izinguquko
Uma usuqalise inqolobane ye-Git, ungaqala ukulandelela izinguquko kukhodi yakho. I-Git isebenzisa inqubo enezinyathelo ezintathu: lungisa amafayela, izinguquko zesiteji, futhi wenze izinguquko.
Ukuze wenze izinguquko esiteji, sebenzisa umyalo olandelayo:
git engeza
Lo myalo wengeza ifayela elishiwo endaweni yesiteji, ulilungiselela ukuzinikela okulandelayo. Ukuze uhlele zonke izinguquko endaweni yokugcina, sebenzisa:
git engeza.
Ngemva kokwenza izinguquko zakho, kufanele uzibophezele ukuze udale inguqulo entsha endaweni yokugcina amakhodi. Sebenzisa umyalo olandelayo ukuze wenze izinguquko zakho:
git commit -m "Zibophezele Umlayezo"
Umlayezo wokuzibophezela kufanele ube ochazayo futhi ube mfushane, ufinyeze izinguquko ezenziwe ekuzinikeleni. Kuwumkhuba omuhle ukunikeza imilayezo yokuzibophezela enengqondo engaqondwa kalula ngabanye onjiniyela.
Ukuhlanganisa nokuhlanganisa
Esinye sezici ezinamandla kakhulu ze-Git yikhono layo lokuphatha amagatsha ngempumelelo. Igatsha livumela onjiniyela ukuthi basebenze ezicini ezihlukene noma ukulungisa iziphazamisi ngesikhathi esisodwa ngaphandle kokuphazamisana nekhodi yomunye. I-Git idala isikhombisi esingasindi esivumelwaneni esithile, esivumela abathuthukisi ukuthi bashintshe phakathi kwamagatsha kalula.
Ukwakha igatsha elisha, sebenzisa umyalo olandelayo:
igatsha le-git
Lo myalo udala igatsha elisha emsebenzini wamanje. Ukushintshela egatsheni elisanda kwakhiwa, sebenzisa:
git ukuphuma
Onjiniyela bangasebenza emagatsheni abo ngokuzimela, benze izinguquko futhi bazibophezele. Uma izinguquko sezilungele ukuhlanganiswa kukhodi eyinhloko, kwenziwa umsebenzi wokuhlanganisa. I-Git ihlanganisa ngobuhlakani izinguquko ezenziwe kumagatsha ahlukene, iqinisekisa inqubo yokuhlanganisa eshelelayo.
Ukuze uhlanganise igatsha elilodwa kwelinye, sebenzisa umyalo olandelayo:
git hlanganisa
I-Git yenza ukuhlanganisa okuzenzakalelayo, ukuxazulula izingxabano uma zivela phakathi nenqubo. Ukuxazulula izingxabano kubandakanya ukubuyekeza mathupha kanye nokulungisa ikhodi engqubuzanayo ukuze kuqinisekiswe ukuhlangana okuhlangene, okungenasiphazamisi.
Ukuthola nokuthumela izinguquko
Ukubambisana kubalulekile kufilosofi ye-Git. I-Git ivumela abathuthukisi ukuthi babelane ngezinguquko zabo nabanye ngokuphusha futhi balande izibophezelo ukuya noma kusuka kumakhosombe akude.
Ukuze uphushele izinguquko zakho zasendaweni endaweni yokugcina okude, sebenzisa umyalo olandelayo:
imvelaphi ye-git push
Lo myalo uphusha ukuzinikela kwakho egatsheni elishiwo endaweni yokugcina okukude. Qiniseka ukuthi unezimvume ezidingekayo zokusunduza izinguquko endaweni yesikhombi esikude.
Ukuze uthole izinguquko zakamuva endaweni yokugcina ekude, sebenzisa:
imvelaphi ye-git
Lo myalo ulanda ukwenza kwakamuva egatsheni elishiwo futhi ukuhlanganise negatsha langakini. Kubalulekile ukuhlola njalo izinguquko ukuze uhambisane nentuthuko yakamuva endaweni yokugcina amakhodi.
I-Advanced Git Techniques
I-Git Setha kabusha
Kwesinye isikhathi ungase udinge ukuhlehlisa izinguquko noma uhambise i- HEAD pointer kokuzibophezela okuhlukile. I-Git inikeza umyalo reset ukuphatha lezi zinhlobo zezimo. Umyalo reset ikuvumela ukuthi usethe kabusha indawo yokugcina ukuze wenze okuthile, ulahle konke ukuzibophezela okulandelayo.
Ukuze usethe kabusha indawo yokugcina ukuze wenze okuthile, sebenzisa umyalo olandelayo:
git kabusha
Lo myalo uhambisa i- HEAD pointer ekuzibopheleleni okushiwo, ukulahla ngempumelelo konke ukuzibophezela okulandelayo. Kubalulekile ukuqapha lapho usebenzisa umyalo reset, njengoba isusa unomphela izibophezelo endaweni yokugcina.
Ukuhlelwa kabusha kwe-Git
I-Git rebase iwumyalo onamandla okuvumela ukuthi uguqule umlando wokuzibophezela ngokuhlehlisa, ukuhlanganisa, noma ukususa imisebenzi. Ukwehlisela phansi kubalulekile ikakhulukazi uma ufuna ukugcina umlando wokuzibophezela ohlanzekile, oqondile.
Ukuze wenze isisekelo esisebenzayo, sebenzisa umyalo olandelayo:
git rebase -i
Lo myalo uvula umhleli osebenzisanayo okuvumela ukuthi ushintshe ama-commits. Ungakhetha ukuhlanganisa ama-commits amaningi abe munye, uhlele imiyalezo ye-commits, noma ususe ama-commits angadingekile. I-Interactive rebase inikeza ukulawula okuhlanganisiwe emlandweni we-commits, okuvumela ukuthi udale umugqa wesikhathi omfushane nonengqondo.
I-Git Binary Search
Uma ulungisa izinkinga eziyinkimbinkimbi kukhodi yakho, ukusesha kanambambili kwe-Git kungaba usizo olukhulu. Ukusesha kanambambili kwe-Git kukuvumela ukuthi useshe umlando wokuzibophezela, kukusiza ukuthi ukhombe ukuzinikela okwethule iphutha noma ukuhlehla.
Ukuqala iseshini yokusesha kanambambili, sebenzisa umyalo olandelayo:
git bisect start
Ukusesha kanambambili kwe-Git kudinga ukuthi ucacise ukuzibophezela "okuhle" kanye nokuzibophezela "okubi", okubonisa iphuzu lapho iphutha lalingekho futhi likhona, ngokulandelanayo. I-Git izokwenza usesho olunambambili ngokuzenzakalela, ibuyekeze izibophezelo ezihlukene futhi ikuvumele ukuthi uhlole ikhodi yakho kuze kubonakale ukuthi ukwenza okubi kubonakale.
I-Git FAQ
1: Uyini umehluko phakathi kwe-Git ne-GitHub?
I-Git ne-GitHub zivame ukusetshenziswa ngokushintshana, kodwa zifeza izinjongo ezahlukene. I-Git uhlelo lokulawula inguqulo olukuvumela ukuthi ulandelele izinguquko endaweni yakho yokugcina amakhodi, kuyilapho i-GitHub iyisevisi yokubamba esekwe kuwebhu yama-repositories e-Git. I-GitHub inikeza izici ezengeziwe zokubambisana njengokulandelela izinkinga, izicelo zokudonsa, kanye namathuluzi okuphatha amaphrojekthi.
2: Ingabe i-Git ingakwazi ukuphatha amafayela amakhulu?
I-Git yakhelwe ngokuyinhloko ukuphatha ikhodi yomthombo, ngokuvamile equkethe amafayela amancane, asekelwe embhalweni. Nakuba i-Git ingakwazi ukuphatha amafayela amakhulu, ayithuthukiswanga ukuze iwaphathe kahle. Kumafayela kanambambili amakhulu, cabanga ukusebenzisa amathuluzi akhethekile njenge-Git LFS (Isitoreji Sefayela Esikhulu) noma amasistimu okulawula inguqulo azinikele njenge-Perforce.
3: Ngingakubuyisela kanjani ukuzibophezela ku-Git?
Ukubuyisela isivumelwano ku-Git, ungasebenzisa umyalo git revert. Ukubuyisela isibopho kudala isibopho esisha esihlehlisa izinguquko ezethulwe yisibopho sokuqala, sikukhansele ngempumelelo. Isibopho sokuqala sihlala endaweni yokugcina, igcina umlando wokuzibophezela.
git buyela
4: Ingabe i-Git ngeyabathuthukisi kuphela?
Nakuba isetshenziswa kakhulu ngabathuthukisi ukuphatha ikhodi yomthombo, izinzuzo ze-Git zidlulela ngale kokuhlela, futhi kunezinye izindlela ezifana ne -Mercurial . Amandla okulawula inguqulo ye-Git angaba usizo ekuphatheni noma yiluphi uhlobo lokuqukethwe kombhalo, njengokubhala imibhalo, amafayela okucushwa, noma ngisho nokubhala izincwadi. Ukuguquguquka kwe-Git kanye nokulula kokusebenzisa kuyenza ibe ithuluzi eliwusizo kunoma ubani osebenza ngamafayela ashintsha ngokuhamba kwesikhathi.
5: Ngingakwazi ukusebenzisa i-Git ngaphandle komugqa womyalo?
Nakuba umugqa womyalo uhlinzeka ngolwazi lwe-Git olunamandla futhi oluguquguqukayo, kukhona i-graphical user interfaces (GUIs) etholakalayo enikeza isixhumi esibonakalayo esibonakalayo nesisebenziseka kalula ku-Git. Amanye amaklayenti adumile e-Git GUI afaka i-Sourcetree, i-GitKraken, ne-GitHub Desktop. Lawa mathuluzi akuvumela ukuthi wenze imisebenzi eminingi ye-Git ngaphandle kokusebenzisa umugqa womyalo.
6: Ngingafaka kanjani isandla kumaphrojekthi womthombo ovulekile ngisebenzisa i-Git?
Ukufaka isandla kumaphrojekthi womthombo ovulekile usebenzisa i-Git kuhilela izinyathelo ezimbalwa ezibalulekile. Okokuqala, kufanele ufole inqolobane yephrojekthi ofuna ukufaka isandla kuyo. Lokhu kudala ikhophi yendawo yokugcina ngaphansi kwe-akhawunti yakho ye-GitHub. Bese, hlanganisa inqolobane eyimfoloko emshinini wangakini, wenze izinguquko ezidingekayo, bese uziphushela endaweni yakho yokugcina enemfologo. Okokugcina, dala isicelo sokudonsa endaweni yokugcina, uphakamisa izinguquko zakho ukuze zibuyekezwe futhi zihlanganiswe.
Isiphetho
I-Git iguqule indlela abathuthukisi ababambisana ngayo kumaphrojekthi wesoftware. Imvelo yayo esabalalisiwe, amandla egatsha anamandla nokuhlanganisa, kanye nokulawula inguqulo okuphumelelayo kuyenza ibe ithuluzi elibalulekile lokugeleza komsebenzi wesimanje. Ngokwazi imiqondo eyisisekelo nezindlela ezithuthukile ze-Git, onjiniyela bangakwazi ukuphatha kahle amakhodi abo, balandelele izinguquko, futhi bahlanganyele ngaphandle komthungo namalungu eqembu. Kungakhathaliseki ukuthi usebenza kumaphrojekthi womuntu siqu noma unikela kumaphrojekthi omthombo ovulekile, i-Git ikunika amandla okulawula ikhodi yakho futhi ikhuthaze ukuqamba okusha.