Sa buong mundo, ang Git ang pinakaginagamit na version control system (VCS) para sa pagsubaybay at kontrol ng proyekto. Nag-aalok din ito ng nakakalat at nagtutulungang kapaligiran sa pagtatrabaho, na naghihikayat sa kooperasyon.
Ang branching ay isa sa pinakamahalagang feature ng Git, dahil pinapayagan ka nitong lumikha ng hiwalay na channel para sa isang partikular na hanay ng mga pagbabago, gaya ng bug patch, pagbuo ng bagong feature, o pag-eeksperimento, nang hindi naaapektuhan ang pangunahing sangay.
Sa paghahambing sa iba pang mga operasyon ng Git, ang pagsasanga ay isang medyo simpleng paraan. Pinapayagan ka nitong lumihis mula sa orihinal na base ng code.
Binibigyang-daan ka ng branching na makipag-collaborate sa ibang mga developer nang mas mabilis at nagbibigay sa iyo ng maraming kalayaan sa iyong workflow. Hinahayaan ka rin nitong magtrabaho sa isang bagong feature nang hindi naaapektuhan ang natitirang bahagi ng codebase.
Ang mekanismo ng pagsasanga ng Git ay nagbibigay-daan para sa pagtatatag ng mga bagong sangay sa loob ng isang proyekto.
Ang mga karagdagang sangay na ito ay maaaring gamitin upang subukan ang mga pagbabago sa code nang hindi nakakasagabal sa pangunahing code ng proyekto. Kung matagumpay ang mga pagsasaayos, maaaring isama ang sangay pabalik sa pangunahing sangay.
Gayunpaman, may mga pagkakataong kailangan mong magtanggal ng isang sangay ng Git nang lokal, ngunit hindi sa malayuan. Magbasa para malaman kung paano ito gagawin.
Ano ang Git Branch?
Maaaring subaybayan ng Git ang ilang linya ng trabaho salamat sa pagsasanga. Binibigyang-daan ka nitong magtrabaho sa maraming bersyon ng iyong proyekto nang sabay-sabay.
Maraming proyekto ang magpapanatili ng isang matatag na master branch habang nagdaragdag ng mga bagong feature o nag-aayos ng mga bug sa isang development o testing branch.
Kapag ang mga Project Manager ay talagang sigurado na ang mga pagbabagong ginawa sa Dev branch ay natutupad ang pamantayan, maaari nilang pagsamahin ang mga pagbabagong iyon sa master branch. Para sa ilang mas malalaking proyekto, ang cycle na ito ay madalas na paulit-ulit nang walang katiyakan.
Ang pakikipagtulungan sa mga sangay ng pagbuo ng Git ay isang magandang diskarte sa pagtatrabaho sa aming programa habang sinusubaybayan ang mga bersyon nito. Ang isang sangay ng pag-unlad, sa pangkalahatan, ay isang hati sa estado ng code na nagtatatag ng isang bagong ruta para sa pagsulong nito.
Maaari itong tumakbo nang kahanay sa iba pang mga sangay ng Git, maaari kang lumikha. Posibleng magdagdag ng mga bagong feature sa aming code sa isang organisado at tumpak na paraan.
Bakit at kailan kailangan itong tanggalin?
Karaniwang kasanayan sa pagpapanatili ang magtanggal ng mga sangay ng Git kapag hindi na ginagamit ang mga ito, bagama't hindi ito palaging pangkalahatan o nauunawaan.
Bakit mo dapat alisin ang mga hindi napapanahong sangay ng Git mula sa iyong imbakan? Mayroong dalawang pangunahing dahilan para dito:
- Hindi sila kailangan. Karamihan sa mga sangay, lalo na ang mga konektado sa isang pull request na sa wakas ay naaprubahan, ay walang function.
- Pinagmumulan sila ng kalituhan. Hindi sila nagdaragdag ng malaking teknolohikal na overhead, ngunit ginagawa nilang mas mahirap para sa mga tao ang pagtatrabaho sa mga listahan ng mga sangay sa repositoryo.
Maaaring ligtas na tanggalin ang mga sangay nang walang takot na mawala ang anumang mga pagbabago.
Isaalang-alang ang sumusunod na senaryo: ang isang branch patch-1 ay isasama sa master branch sa pamamagitan ng isang pull request. Bago pagsamahin, master at patch-1, ang bawat isa ay tumuturo sa iba't ibang mga pagbabago sa kasaysayan ng git commit.
Kasunod ng pagsasama (kung may idinagdag na bagong merge commit), master at patch-1 ay parehong nagli-link sa bagong merge commit. Sa puntong ito, tapos na ang pull request, at lahat ng hinaharap na push ay dapat isumite sa master sa halip na patch-1.
Local vs Remote Branch sa Git
Malayong Sangay – Ito ay matatagpuan sa isang hiwalay na sistema, sa pangkalahatan ay isang server na maaaring ma-access ng mga developer. Kapag ang isang malayong sangay ay tinanggal, ito ay tatanggalin para sa lahat ng mga gumagamit.
Lokal na Sangay – Sa lokal na sistema, isang lokal na sangay ang nai-save. Ang pagtanggal ng lokal na sangay ay walang epekto sa isang malayong sangay.
Paano magtanggal ng mga sangay nang lokal?
Hindi ka nito papayagan na tanggalin ang branch na ginagawa mo ngayon, kaya siguraduhing mag-checkout ka ng isang branch na HINDI mo tinatanggal. Magsimula tayo sa pag-iisip kung paano mag-alis ng lokal na sangay.
- Upang magsimula, patakbuhin ang (git branch -a) na utos upang makita ang lahat ng mga sangay (parehong lokal at malayo).
- Pagkatapos, gamit ang (git branch -d) na utos, na sinusundan ng pangalan ng sangay na nais mong alisin, maaari mong tanggalin ito.
Kung susubukan mong tanggalin ang isang sangay na may mga hindi pinagsamang pagbabago, lalabas ang sumusunod na mensahe ng error:
Gaya ng ipinahihiwatig ng mensahe sa itaas, upang pilitin ang pagtanggal ng isang sangay, gamitin ang opsyong -D, na isang shortcut para sa —delete —force.
Pakitandaan na ang pagtanggal ng hindi pinagsamang sangay ay magreresulta sa pagkawala ng lahat ng pagbabago sa sangay na iyon.
Kung susubukan mong tanggalin ang kasalukuyang sangay, makikita mo ang sumusunod na mensahe:
Hindi mo maalis ang branch na kinaroroonan mo ngayon. Lumipat muna sa ibang branch, pagkatapos ay alisin ang pangalan ng branch:
Downside ng Pagtanggal ng Sangay
Ang isang posibleng kawalan sa pagtanggal ng mga sangay ay ang anumang mga link sa lokasyon ng sangay ay masisira (sa GitHub, atbp.).
Halos wala akong permanenteng link sa mga hindi pangunahing sangay, at kung gusto kong kumonekta sa anumang trabaho sa isang partikular na sangay, malamang na gagawin ko ito pagkatapos itong maging pull request (kung saan, magli-link ako sa Hilahin-Kahilingan).
Final Words
Ang pag-alam kung paano gamitin ang mga sangay ng pag-unlad ay nagiging kritikal sa paglikha ng iyong aplikasyon sa isang sistematikong paraan. Mag-ingat sa istraktura ng iyong code sa iba't ibang sangay.
Kung, sa anumang punto, hindi ka sigurado sa isang kumplikadong operasyon, palaging magandang ideya na magbasa Opisyal na dokumentasyon ng Git sa mga sanga.
Mag-iwan ng Sagot