Viena stipriausių „Git“ savybių yra lengvos šakos. Jie leidžia efektyviai dirbti lygiagrečiuose vystymosi etapuose. Kūrėjas netgi gali sukurti atskiras šakas atskiroms klaidoms. Laike ir erdvėje šakos yra beveik nemokamos.

Daugelis „git“ darbo eigų yra susijusios su ilgalaikiais ir laikinais filialais. Todėl kuriant dažnai reikia ištrinti šakas. Retkarčiais reikia ištrinti bendrus filialus iš nuotolinio serverio, taip pat vietinius filialus.

Kodėl reikia ištrinti filialą?

Pirma, jei jūs vis dar susitvarkyti su git, yra gana didelė tikimybė, kad sukursite filialą ir tada nuspręsite, kad jums to nereikia. Arba galbūt eksperimentuojate su šakomis ir norite išsivalyti po savęs. Tai puiku, nes išsišakojimas git yra lengva operacija. Tai labai greita ir efektyviai naudojama vieta diske.

Kaip panaudoti „Git“ filialus struktūrizuojant savo programavimo projektą

Šiame straipsnyje mes apžvelgsime, ką reiškia kodo išsišakojimas, kaip tai padaryti, ir būdai, kaip valdyti „pagrindinio“ „git“ filialo naujinius.

Todėl daugelis „git“ kūrimo darbo eigų skatina šakotis net ir atliekant labai mažas ar trumpas užduotis. Pavyzdžiui, bendra strategija yra sukurti šaką už vieną klaidos ištaisymą. Tai galioja net tuo atveju, jei jame dalyvauja tik vienas autorius, kuris keičia vienos eilutės failą.

Dėl šių priežasčių filialų kūrimas ir ištrynimas yra operacijos, kurias reikia gerai suprasti. Galite pastebėti, kad dažnai ištrinate šakas per įprastą kūrimo eigą.

Pavyzdinis saugykla su filialais

Šie pavyzdžiai nurodo šios struktūros pavyzdinį saugyklą:

$ git filialas -vv
1 dev 1ae41e8 [kilmė / dev] pirmiausia įsipareigokite
2 * pagrindinis 1ae41e8 [kilmė / pagrindinis] pirmasis įsipareigojimas

Atkreipkite dėmesį, kad kiekvienas vietinis padalinys turi atitinkamą aukštesnio lygio šaką iš nuotolinio valdymo pulto: kilmę.

Filialo ištrynimas naudojant komandinę eilutę

Pagrindinė šakos ištrynimo komandos sintaksė yra:

gito atšaka (-d | -D) [-r] ...

Paprasčiausia komandos forma pašalina vietinį filialą, jei visi jo pakeitimai buvo sujungti:

$ git filialas -d dev

Negalite ištrinti šiuo metu aktyvios šakos; jei bandysite tai padaryti, gausite tokį pranešimą:

klaida: negalima ištrinti šakos „main“, patikrintos „/ tmp / sandbox“

Kai viskas bus gerai, pamatysite patvirtinimo pranešimą:

Ištrintas filialas dev (buvo 1ae41e8).

Jei ištrinsite filialą, kuris egzistuoja tik vietoje, atlikdami nepakeistus pakeitimus, šie pakeitimai bus prarasti. Todėl pagal numatytuosius nustatymus „git“ atsisakys ištrinti filialą tokioje situacijoje:

klaida: Šaka „dev“ nėra visiškai sujungta.
Jei tikrai norite jį ištrinti, paleiskite „git branch -D dev“.

Kaip pranešama apie klaidos pranešimą, galite priversti ištrinti naudodami -D vėliava. Tačiau „git“ leis jums ištrinti nesujungtą vietinį filialą, jei jis egzistuoja nuotoliniu būdu:

įspėjimas: ištrinti šaką „dev“, kuri buvo sujungta su
„refs / remotes / origin / dev“, bet dar nėra sujungtas su HEAD.
Ištrintas filialas dev (buvo 9a6d20b).

Ištrinti nuotolinį filialą yra visai kas kita. Jūs naudosite git stumti komandą kartu su -d vėliava ištrinti. Po to pateikite nuotolinio valdymo pulto pavadinimą (dažnai kilmę) ir filialo pavadinimas:

$ git push -d kilmės dev
Į github.com: bobbykjack / sandbox.git
- [ištrinta] kūr

Vietinių ir nuotolinių filialų ištrynimas naudojant „GitHub Desktop“

Skirtingai nuo komandinės eilutės „git“ programos, „GitHub“ darbalaukio programa leis jums ištrinti tik aktyvų filialą. Šį veiksmą galite atlikti naudodami Filialas meniu, pasirinkdami Ištrinti parinktį ir ją patvirtindami:

„GitHub Desktop“ neleis ištrinti numatytojo šakos, pvz. pagrindinis - nors pats „git“ tai palaiko. Jei numatytasis filialas yra tas, kuris šiuo metu yra aktyvus, programa išjungia meniu veiksmą.

Jei filialas taip pat reiškia nuotolinį filialą, „GitHub Desktop“ suteikia galimybę jį ištrinti ir iš nuotolinio valdymo pulto:

Filialų ištrynimas naudojant „GitKraken“

„GitKraken“ kairėje šoninėje juostoje rodo saugyklos vietinius ir nuotolinius padalinius. Privalote ištrinti kiekvieną atskirai.

Užveskite pelės žymeklį virš atitinkamo filialo pavadinimo ir spustelėkite Filialas veiksmų meniu, kuris atrodo kaip trys vertikalūs taškai. Meniu pasirinkite Ištrinti :

Pamatysite patvirtinimo pranešimą, informuojantį, kad tai yra žalinga operacija. Galite patvirtinti, kad norite tęsti Ištrinti mygtukas:

Atsižvelgiant į numatytąją „git“ komandinės eilutės programos elgseną, pirmiausia turite pereiti į kitą šaką, o ne tą, kurią ištrinate. Kitu atveju pamatysite klaidos pranešimą:

Vietinių ir nuotolinių filialų ištrynimas naudojant „Tower“

Filialo ištrynimas naudojant Bokštas yra labai panašus į šakos ištrynimą naudojant „GitKraken“. Kairėje pusėje esančiame skydelyje rodomi vietiniai ir nuotoliniai filialai. Dešiniuoju pelės mygtuku spustelėkite bet kurį šaką ir kontekstiniame meniu pasirinkite parinktį Ištrinti:

Pagrindinis skirtumas yra tai, kad patvirtinant patvirtinimą nuotolinį filialą galima ištrinti kartu su vietiniu filialu:

Filialo ištrynimas iš „GitHub“

„GitHub“ veikia tik kaip nuotolinis šaltinis, todėl filialai pagal nutylėjimą yra nuotoliniai. Jei ištrinsite filialą naudodamiesi „GitHub“ svetaine, turėsite ištrinti atitinkamą vietinį filialą naudodami vieną iš kitų čia pateiktų metodų.

Kaip ir naudojant „GitHub Desktop“ programą, „GitHub“ svetainė neleis ištrinti numatytojo šakos. Variantas paprasčiausiai neatsiranda. Vis dėlto atšaukti filialą yra nesudėtinga. Iš saugyklos Kodas puslapyje spustelėkite šakos nuorodą, suraskite filialą, kurį norite ištrinti, tada spustelėkite Ištrinti šį filialą piktogramą, kuri atrodo kaip šiukšliadėžė:

Turėkite omenyje, kad nėra patikrinimų, ar nėra nesusijusių pakeitimų, todėl „GitHub“ filialas bus tiesiog nedelsiant ištrintas. Tačiau kadangi tai visada atstovaus nutolusį filialą, tai turėtų būti elgesys, kurio tikitės.

Atminkite, kad ištrynę pamatysite mygtuką Atkurti šaka. Tačiau tai yra tiesiog naudinga anuliavimo funkcija, jei netyčia spustelėsite ištrynimo piktogramą. Nepasitikėkite tuo, nes kai tik atnaujinsite arba pereisite nuo puslapio, prarasite pasirinkimą!

Vietinių ir nuotolinių „Bitbucket“ skyrių ištrynimas

„Bitbucket“, kaip ir „GitHub“, neleis ištrinti numatytosios šakos. „Bitbucket“ tai vadina Pagrindinė šaka į Saugyklos nustatymai. Galite ištrinti bet kurį kitą filialą, nurodytą Filialai skirtuką Veiksmai Meniu:

Taip pat galite ištrinti daugiau nei vieną filialą vienu metu, jei atliekate didelę valymo operaciją:

Filialų ištrynimas yra tipiškos „Git“ darbo eigos dalis

„Git“ šakos gali apsunkinti jūsų darbo eigą, ypač su vietinėmis, nuotolinėmis ir stebėjimo šakomis. Bet, norint paprastos kasdieninės plėtros, tikriausiai nuolat kursite ir ištrinsite vietinius skyrius. Tai yra pagrindinis tipinės „git“ darbo eigos aspektas, prie kurio turėtumėte priprasti.

El
Kaip panaudoti „Git“ filialus struktūrizuojant savo programavimo projektą

Šiame straipsnyje mes apžvelgsime, ką reiškia kodo išsišakojimas, kaip tai padaryti, ir būdai, kaip valdyti „pagrindinio“ „git“ filialo naujinius.

Susijusios temos
  • Programavimas
  • „GitHub“
Apie autorių
Bobis Džekas (Paskelbta 23 straipsniai)

Bobis yra technologijų entuziastas, kuris beveik du dešimtmečius dirbo programinės įrangos kūrėju. Jis aistringai žaidžia, dirba „Switch Player Magazine“ apžvalgų redaktoriumi ir yra pasinėręs į visus internetinės leidybos ir interneto kūrimo aspektus.

Daugiau iš Bobby Jacko

Prenumeruokite mūsų naujienlaiškį

Prisijunkite prie mūsų naujienlaiškio, kuriame rasite techninių patarimų, apžvalgų, nemokamų el. Knygų ir išskirtinių pasiūlymų!

Dar vienas žingsnis…!

Prašome patvirtinti savo el. Pašto adresą el. Laiške, kurį jums ką tik išsiuntėme.

.