Kaip ištrinti „Git“ šaką vietoje ir nuotoliniu būdu

Kaip ištrinti „Git“ šaką vietoje ir nuotoliniu būdu

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. Tiek laiku, tiek erdve filialai yra beveik nemokami.





ps4 paskyros užrakinimas/slaptažodžio nustatymas iš naujo

Daugelis „Git“ darbo eigų yra susijusios su ilgalaikėmis ir laikinomis šakomis. Todėl kūrimo metu dažnai reikia ištrinti šakas. Kartais reikia ištrinti bendrinamus filialus iš nuotolinio serverio, taip pat vietinius skyrius.





Kodėl ištrinti filialą?

Pirma, jei vis dar susiduriate su „git“, yra didelė tikimybė, kad sukursite filialą ir nuspręsite, kad to nereikia. Arba galbūt eksperimentuojate su šakomis ir norite išvalyti save. Tai gerai, nes išsišakojimas git yra lengva operacija. Tai labai greita ir efektyviai naudoja vietos diske.





Dėl to daugelis „Git“ kūrimo darbo eigų skatina šakotis net ir labai mažoms ar trumpoms užduotims. Pavyzdžiui, bendra strategija yra sukurti šaką vienam klaidos pataisymui. Tai tiesa, net jei tik vienas autorius atlieka vienos eilutės pakeitimą viename faile.

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



Pavyzdinė saugykla su filialais

Šie pavyzdžiai yra pavyzdinė saugykla, kurios struktūra tokia:

$ git branch -vv
1 dev 1ae41e8 [origin/dev] first commit
2 * main 1ae41e8 [origin/main] first commit

Atminkite, kad kiekviena vietinė šaka turi atitinkamą šaką iš nuotolinio valdymo pulto: kilmės .





Šakos ištrynimas naudojant komandinę eilutę

Pagrindinė šakos ištrynimo komandų sintaksė yra tokia:

git branch (-d | -D) [-r] ...

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





$ git branch -d dev

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

error: Cannot delete branch 'main' checked out at '/tmp/sandbox'

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

Deleted branch dev (was 1ae41e8).

Jei ištrinsite šaką, kuri egzistuoja tik vietoje, su nepakeistais pakeitimais, tuos pakeitimus prarasite. Todėl „git“ pagal nutylėjimą atsisakys ištrinti filialą tokioje situacijoje:

error: The branch ‘dev’ is not fully merged.
If you are sure you want to delete it, run 'git branch -D dev’.

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

warning: deleting branch ‘dev’ that has been merged to
'refs/remotes/origin/dev’, but not yet merged to HEAD.
Deleted branch dev (was 9a6d20b).

Nuotolinio filialo ištrynimas yra visiškai kitoks. Jūs naudosite git stumti komandą kartu su -d vėliavėlę, kurią norite ištrinti. Po to nurodykite nuotolinio valdymo pulto pavadinimą (dažnai kilmės ) ir filialo pavadinimas:

$ git push -d origin dev
To github.com:bobbykjack/sandbox.git
- [deleted] dev

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

Skirtingai nuo komandinės eilutės „git“ programos, „GitHub“ darbalaukio programa leis tik ištrinti aktyvią šaką. Šį veiksmą galite atlikti per Filialas meniu, pasirinkdami Ištrinti parinktį ir patvirtinkite:

„GitHub Desktop“ neleis ištrinti numatytosios šakos, pvz. pagrindinis, nors pats „git“ tai palaiko. Jei numatytoji šaka yra ta, kuri šiuo metu yra aktyvi, programa išjungia meniu veiksmą.

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

Šakų ištrynimas naudojant „GitKraken“

„GitCrack“ rodomi jūsų saugyklos vietiniai ir nuotoliniai skyriai kairėje šoninėje juostoje. Turite ištrinti kiekvienąatskirai.

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

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

Atspindėdami numatytąją „git“ komandinės eilutės programos elgseną, pirmiausia turite pereiti prie kitos šakos nei ta, kurią ištrinate. Priešingu atveju pamatysite klaidos pranešimą:

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

Ištrinti šaką naudojant Bokštas yra labai panašus į filialo ištrynimą naudojant „GitKraken“. Vietiniai ir nuotoliniai filialai rodomi skydelyje kairėje pusėje. Dešiniuoju pelės mygtuku spustelėkite bet kurią šaką ir kontekstiniame meniu pasirinkite parinktį Ištrinti:

Vienas esminis skirtumas yra tas, kad patvirtinimo metu nuotolinį filialą galima ištrinti kartu su vietiniu filialu:

Filialo ištrynimas „GitHub“

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

Kaip ir „GitHub Desktop“ programoje, „GitHub“ svetainėje neleidžiama ištrinti numatytosios šakos. Parinktis tiesiog neatsiranda. Tačiau šakos ištrynimas yra paprastas. Iš saugyklos Kodas puslapyje, spustelėkite šakos nuorodą, suraskite šaką, kurią norite ištrinti, tada spustelėkite Ištrinti šią šaką piktogramą, kuri atrodo kaip šiukšliadėžė:

Atminkite, kad nėra tikrinimų dėl nesujungtų pakeitimų, todėl „GitHub“ filialas tiesiog bus nedelsiant ištrintas. Tačiau kadangi tai visada bus nuotolinė šaka, tai turėtų būti toks elgesys, kokio tikitės.

Atminkite, kad ištrynę pamatysite mygtuką Atkurti šaka. Tačiau tai tiesiog naudinga anuliavimo funkcija, jei netyčia spustelėsite ištrynimo piktogramą. Nepasikliaukite ja, nes kai tik atnaujinsite puslapį arba nueisite iš jo, prarasite šią parinktį!

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

„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ą, per atitinkamą Veiksmai Meniu:

Taip pat galite ištrinti daugiau nei vieną šaką vienu metu, jei atliekate didelį valymo veiksmą:

Šakų ištrynimas yra įprastos „Git“ darbo eigos dalis

„Git“ šakos gali apsunkinti jūsų darbo eigą, ypač naudojant vietines, nuotolines ir stebėjimo šakas. Tačiau norėdami paprasčiau tobulėti kasdien, greičiausiai kuriate ir ištrinate vietinius filialus. Tai yra pagrindinis tipinės „git“ darbo eigos aspektas, prie kurio turėtumėte priprasti.

Dalintis Dalintis „Tweet“ Paštu Kaip naudoti „Git“ šakas programuojant savo projektą

Šiame straipsnyje apžvelgsime, ką reiškia jūsų kodo išsišakojimas, kaip tai padaryti ir kaip valdyti pagrindinės „git“ šakos naujinius.

Skaityti toliau
Susijusios temos
  • Programavimas
  • „GitHub“
Apie autorių Bobis Džekas(Paskelbti 58 straipsniai)

Bobby 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 publikacijos ir žiniatinklio kūrimo aspektus.

Daugiau iš Bobby Jack

Prenumeruokite mūsų naujienlaiškį

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

Norėdami užsiprenumeruoti, spustelėkite čia