Giti üks tugevamaid omadusi on selle kerged oksad. Need võimaldavad teil tõhusalt töötada paralleelsetes arenguetappides. Arendaja võib isegi luua eraldi vead eraldi harude jaoks. Nii ajas kui ruumis on harud peaaegu kuludeta.
kuidas ekraanil salvestada snapchat, ilma et nad teaksid
Paljud giti töövood tegelevad nii pikaajaliste kui ka ajutiste harudega. Seetõttu on arendamise käigus sageli vaja filiaale kustutada. Aeg -ajalt on vaja kustutada jagatud filiaalid kaugserverist ja kohalikud harud.
Miks kustutada filiaal?
Esiteks, kui hakkate ikkagi gitiga toime tulema, on üsna hea võimalus luua filiaal ja seejärel otsustada, et te ei pea seda tegema. Või katsetate okstega ja tahate end puhtaks teha. See on hea, kuna giti hargnemine on kerge toiming. See on väga kiire ja kasutab kettaruumi tõhusalt.
Selle tulemusel julgustavad paljud giti arendamise töövood hargnemist isegi väga väikeste või lühikeste ülesannete jaoks. Näiteks on ühine strateegia luua haru ühe veaparanduse jaoks. See kehtib isegi siis, kui see hõlmab ainult ühte autorit, kes teeb ühes failis ühe rea muudatusi.
Nendel põhjustel on harude loomine ja kustutamine toimingud, millest tuleb hästi aru saada. Tüüpilise arendustöö käigus saate sageli filiaale kustutada.
Filiaalide näidishoidla
Järgmised näited viitavad järgmise struktuuriga näidishoidlale:
$ git branch -vv
1 dev 1ae41e8 [origin/dev] first commit
2 * main 1ae41e8 [origin/main] first commit
Pange tähele, et igal kohalikul harul on kaugjuhtimispuldist vastav ülesvooluharu: päritolu .
Haru kustutamine käsurealt
Haru kustutamise põhiline käsusüntaks on:
git branch (-d | -D) [-r] ...
Käsu lihtsaim vorm kustutab kohaliku haru, kui kõik selle muudatused on ühendatud:
$ git branch -d dev
Te ei saa praegu aktiivset haru kustutada; kui proovite seda teha, saate sellise sõnumi:
error: Cannot delete branch 'main' checked out at '/tmp/sandbox'
Kui asjad lähevad õigesti, näete kinnitussõnumit:
Deleted branch dev (was 1ae41e8).
Kui kustutate ühendamata muudatustega ainult kohapeal eksisteeriva haru, kaotate need muudatused. Seetõttu keeldub git sellises olukorras vaikimisi filiaali kustutamast:
error: The branch ‘dev’ is not fully merged.
If you are sure you want to delete it, run 'git branch -D dev’.
Nagu veateade teavitab, saate kustutamise sundida -D lipp. Kuid git võimaldab teil ühendamata kohaliku haru kustutada, kui see on eemalt olemas:
warning: deleting branch ‘dev’ that has been merged to
'refs/remotes/origin/dev’, but not yet merged to HEAD.
Deleted branch dev (was 9a6d20b).
Kaugharu kustutamine on hoopis midagi muud. Kasutate git push käsk koos -d kustutamiseks märkige. Pärast seda sisestage kaugjuhtimispuldi nimi (sageli päritolu ) ja filiaali nimi:
$ git push -d origin dev
To github.com:bobbykjack/sandbox.git
- [deleted] dev
Kohalike ja kaugharude kustutamine GitHubi töölauaga
Erinevalt käsurea programmist git GitHubi töölauarakendus võimaldab teil ainult aktiivse haru kustutada. Seda toimingut saate läbi viia Filiaal menüüst, valides Kustuta valik ja kinnitage see:
GitHub Desktop ei lase teil vaikeharu kustutada - nt. peamine - kuigi git ise seda toetab. Kui vaikeharu on praegu aktiivne, keelab rakendus menüütoimingu.
Kui haru esindab ka kaugharu, annab GitHub Desktop võimaluse selle ka kaugjuhtimispuldist kustutada:
Filiaalide kustutamine GitKrakeni abil
GitCrack kuvab teie hoidla kohalikud ja kaugharu vasakpoolsel külgribal. Peate igaüks kustutamaeraldi.
Hõljutage kursorit sobiva filiaali nime kohal ja klõpsake nuppu Filiaal toimingute menüü, mis näeb välja nagu kolm vertikaalset punkti. Valige menüüst Kustuta :
Näete kinnitussõnumit, mis teavitab teid, et see on hävitav toiming. Võite kinnitada, et soovite jätkata Kustuta nupp:
Peegeldades käsurea programmi git vaikimisi käitumist, peate kõigepealt lülituma mõnele muule harule kui see, mida kustutate. Vastasel korral näete veateadet:
Kohalike ja kaugharude kustutamine torni abil
Filiaali kustutamine rakendusega Torn on väga sarnane haru kustutamisega GitKrakeniga. Kohalikud ja kauged harud on näidatud vasakpoolsel paneelil. Paremklõpsake mis tahes haru ja valige kontekstimenüüst suvand Kustuta:
Üks peamine erinevus on see, et kinnitamise ajal saab kaugharu koos kohaliku haruga kustutada:
Filiaali kustutamine GitHubis
GitHub toimib ainult kaugallikana, seega on harud seal vaikimisi kauged. Kui kustutate filiaali GitHubi veebisaidi abil, peate vastava kohaliku haru kustutama, kasutades mõnda teist siinset meetodit.
Nagu GitHubi töölauarakenduse puhul, ei luba GitHubi veebisait vaikimisi haru kustutada. Valik lihtsalt ei ilmu. Oksa kustutamine on siiski lihtne. Hoidlast Kood lehel, klõpsake ikooni oksad link, leidke kustutatav haru ja klõpsake nuppu Kustutage see haru ikoon, mis näeb välja nagu prügikast:
Pange tähele, et ühendamata muudatuste kontrollimist ei toimu, seega kustutatakse GitHubis see haru lihtsalt kohe. Kuid kuna see esindab alati kauget haru, peaks see olema ootuspärane käitumine.
Pange tähele, et pärast kustutamist näete nuppu Taastama haru. See on aga lihtsalt kasulik tagasivõtmise funktsioon juhuks, kui klõpsate kogemata kustutamisikoonil. Ärge lootke sellele, sest niipea, kui värskendate lehte või eemaldate sellelt lehelt, kaotate selle võimaluse!
Kohalike ja kaugharu kustutamine Bitbucketis
Bitbucket, nagu GitHub, ei luba teil vaikeharu kustutada. Bitbucket nimetab seda Peamine haru sisse Hoidla seaded . Saate kustutada kõik muud lehel loetletud harud Filiaalid vahekaardil vastava kaudu Toimingud menüü:
Kui teete suurt puhastustööd, saate korraga kustutada ka mitu haru:
Filiaalide kustutamine on osa tavalisest Giti töövoost
Giti harud võivad teie töövoogu keerulisemaks muuta, eriti kohaliku, kaug- ja jälgimisharuga. Kuid lihtsa igapäevase arengu jaoks loote ja kustutate tõenäoliselt kohalikke filiaale kogu aeg. See on tüüpilise git -töövoo põhiaspekt, millega peaksite harjuma.
Jaga Jaga Piiksuma E -post Kuidas kasutada Git -harusid oma programmeerimisprojekti struktureerimiseksSelles artiklis vaatleme, mida tähendab teie koodi hargnemine, kuidas seda teha ja kuidas git -peamise haru värskendusi hallata.
Loe edasi Seotud teemad- Programmeerimine
- GitHub
Bobby on tehnoloogiahuviline, kes töötas enam kui kaks aastakümmet tarkvaraarendajana. Ta on kirglik mängude vastu, töötab ajakirja Switch Player ülevaadete toimetajana ning on süvenenud kõikidesse veebipõhiste avaldamise ja veebiarenduse aspektidesse.
Veel Bobby JackiltTelli meie uudiskiri
Liituge meie uudiskirjaga, et saada tehnilisi näpunäiteid, ülevaateid, tasuta e -raamatuid ja eksklusiivseid pakkumisi!
Tellimiseks klõpsake siin