Jednou z najsilnejších vlastností Gitu sú jeho ľahké vetvy. Umožňujú vám efektívne pracovať na paralelných fázach vývoja. Vývojár môže dokonca vytvoriť jednotlivé vetvy pre samostatné chyby. V čase i priestore sú pobočky takmer bez nákladov.
Mnoho pracovných postupov git sa zaoberá dlhodobými aj dočasnými pobočkami. Preto je počas vývoja často potrebné vetvy mazať. Príležitostne je potrebné vymazať zdieľané vetvy zo vzdialeného servera, ako aj z miestnych pobočiek.
Prečo vymazať pobočku?
Najprv, ak ste stále dostať sa do styku s gitom, je dosť veľká šanca, že si vytvoríte pobočku a potom sa rozhodnete, že to nepotrebujete. Alebo môžete experimentovať s pobočkami a chcieť by ste si upratať. To je v poriadku, pretože rozvetvenie v gite je ľahká operácia. Je to veľmi rýchle a efektívne využíva miesto na disku.
V tomto článku sa pozrieme na to, čo znamená vetvenie vášho kódu, ako na to a spôsoby správy aktualizácií „hlavnej“ vetvy git.
Výsledkom je, že mnoho pracovných postupov vývoja git podporuje rozvetvenie, a to aj pri veľmi malých alebo krátkych úlohách. Spoločnou stratégiou je napríklad: vytvorte pobočku na opravu jednej chyby. Platí to, aj keď ide o to, že jednoriadkový autor zmení jedného riadku v jednom súbore.
Z týchto dôvodov sú vytváranie a mazanie pobočiek operáciami, ktorým je potrebné dobre porozumieť. Možno sa ocitnete pri častom mazaní pobočiek počas typického vývojového pracovného toku.
Vzorové úložisko s pobočkami
Nasledujúce príklady odkazujú na vzorové úložisko s nasledujúcou štruktúrou:
$ git pobočka -vv
1 dev 1ae41e8 [origin / dev] prvý záväzok
2 * hlavný 1ae41e8 [pôvod / hlavný] prvý potvrdenie
Upozorňujeme, že každá lokálna pobočka má zodpovedajúcu protiprúdovú vetvu zo vzdialeného: pôvodu.
Vymazanie pobočky pomocou príkazového riadku
Základná syntax príkazu na odstránenie vetvy je:
vetva git (-d | -D) [-r] ...
Najjednoduchšia forma príkazu odstráni lokálnu vetvu za predpokladu, že boli zlúčené všetky jej zmeny:
$ git pobočka -d dev
Nemôžete odstrániť pobočku, ktorá je momentálne aktívna; ak sa o to pokúsite, zobrazí sa vám táto správa:
chyba: Nie je možné odstrániť vetvu „hlavná“ odhlásená v priečinku „/ tmp / sandbox“
Keď pôjde všetko správne, zobrazí sa potvrdzujúca správa:
Odstránená pobočka dev (bola 1ae41e8).
Ak odstránite vetvu, ktorá existuje iba lokálne, s nezlúčenými zmenami prídete o tieto zmeny. Preto git v takomto prípade odmietne vymazať vetvu, v predvolenom nastavení:
chyba: Pobočka „dev“ nie je úplne zlúčená.
Ak ste si istí, že ho chcete vymazať, spustite 'git branch -D dev'.
Ako informuje chybové hlásenie, vymazanie môžete vynútiť pomocou -D vlajka. Avšak git vám umožní odstrániť nezlúčenú miestnu pobočku, ak existuje vzdialene:
varovanie: mazanie vetvy ‘dev’, ktorá bola zlúčená s
„refs / remotes / origin / dev“, ale zatiaľ neboli zlúčené do HEAD.
Odstránená pobočka dev (bola 9a6d20b).
Odstránenie vzdialenej vetvy je úplne odlišné. Použijete git tlačiť velenie spolu s -d príznak na odstránenie. Potom zadajte názov diaľkového ovládača (často pôvodu) a názov pobočky:
$ git push -d pôvod dev
Na github.com: bobbykjack / sandbox.git
- [vypúšťa sa] dev
Odstránenie miestnych a vzdialených pobočiek pomocou pracovnej plochy GitHub
Na rozdiel od programu git z príkazového riadku Aplikácia GitHub pre počítač umožní vám iba vymazať aktívnu vetvu. Túto akciu môžete vykonať prostredníctvom Pobočka menu, výberom Odstrániť možnosť a potvrdenie:
GitHub Desktop vám nedovolí odstrániť predvolenú vetvu - napr. main - aj keď to sám git podporuje. Ak je predvolená vetva tá, ktorá je momentálne aktívna, aplikácia zakáže akciu ponuky.
Ak pobočka predstavuje aj vzdialenú pobočku, GitHub Desktop má možnosť odstrániť ju aj zo vzdialeného:
Vymazanie pobočiek pomocou GitKraken
GitKraken zobrazí lokálne a vzdialené pobočky vášho úložiska na ľavom bočnom paneli. Každú z nich musíte odstrániť oddelene.
Umiestnite kurzor myši na názov príslušnej vetvy a kliknite na ikonu Pobočka ponuka akcií, ktorá vyzerá ako tri zvislé bodky. Z ponuky vyberte možnosť Odstrániť :
Zobrazí sa potvrdzujúca správa s informáciou, že ide o deštruktívnu operáciu. Môžete potvrdiť, že chcete pokračovať s Odstrániť tlačidlo:
Odrážajúc predvolené správanie programu príkazového riadku git, musíte najskôr prepnúť na inú vetvu ako tú, ktorú odstraňujete. V opačnom prípade sa zobrazí chybové hlásenie:
Vymazanie miestnych a vzdialených pobočiek pomocou aplikácie Tower
Vymazanie pobočky pomocou Veža je veľmi podobné ako vymazanie pobočky pomocou GitKraken. Miestne a vzdialené pobočky sú zobrazené v paneli na ľavej strane. Kliknite pravým tlačidlom myši na ľubovoľnú vetvu a z kontextovej ponuky vyberte možnosť Odstrániť:
Jedným kľúčovým rozdielom je, že vzdialenú pobočku je možné pri potvrdení vymazať spolu s miestnou pobočkou:
Vymazanie pobočky na GitHub
GitHub funguje iba ako vzdialený zdroj, takže pobočky sú predvolene vzdialené. Ak odstránite pobočku pomocou webu GitHub, budete musieť zodpovedajúcu miestnu pobočku odstrániť pomocou niektorej z ďalších metód uvedených tu.
Rovnako ako v prípade aplikácie GitHub Desktop, ani web GitHub vám neumožňuje odstrániť predvolenú vetvu. Táto možnosť sa jednoducho nezobrazí. Vymazanie pobočky je však priame. Z úložiska Zákonníka stránke kliknite na ikonu konáre prepojenie, vyhľadajte vetvu, ktorú chcete odstrániť, a potom kliknite na ikonu Odstrániť túto vetvu ikona, ktorá vyzerá ako odpadkový kôš:
Upozorňujeme, že neexistujú kontroly nezlúčených zmien, takže na GitHube bude pobočka jednoducho okamžite odstránená. Pretože to však vždy bude predstavovať vzdialenú vetvu, malo by to byť správanie, ktoré očakávate.
Upozorňujeme, že po odstránení sa zobrazí tlačidlo Obnoviť pobočka. Je to však jednoducho užitočná funkcia vrátenia späť, ak náhodou kliknete na ikonu odstránenia. Nespoliehajte sa na to, pretože akonáhle stránku obnovíte alebo od nej odídete, stratíte túto možnosť!
Mazanie lokálnych a vzdialených pobočiek na Bitbucket
Bitbucket, podobne ako GitHub, vám nedovolí odstrániť predvolenú vetvu. Bitbucket tomu hovorí Hlavná vetva v Nastavenia úložiska. Môžete odstrániť ktorúkoľvek inú vetvu uvedenú na serveri Pobočky záložku prostredníctvom jej zodpovedajúcich Akcie Ponuka:
Ak vykonávate veľkú operáciu čistenia, môžete tiež odstrániť viac ako jednu vetvu naraz:
Vymazanie pobočiek je súčasťou typického pracovného toku Git
Vetvy Git môžu komplikovať váš pracovný tok, najmä v prípade miestnych, vzdialených a sledovacích pobočiek. Ale pre jednoduchý každodenný vývoj je pravdepodobné, že budete neustále vytvárať a mazať miestne pobočky. Toto je základný aspekt typického pracovného toku git, na ktorý by ste si mali zvyknúť.
V tomto článku sa pozrieme na to, čo znamená vetvenie vášho kódu, ako na to a spôsoby správy aktualizácií „hlavnej“ vetvy git.
- Programovanie
- GitHub
Bobby je technologický nadšenec, ktorý takmer dve desaťročia pracoval ako vývojár softvéru. Je vášnivým hrám, pracuje ako redaktor recenzií v magazíne Switch Player Magazine a je ponorený do všetkých aspektov online publikovania a vývoja webu.
Prihlásiť sa ku odberu noviniek
Pripojte sa k nášmu bulletinu s technickými tipmi, recenziami, bezplatnými elektronickými knihami a exkluzívnymi ponukami!
Ešte jeden krok…!
V e-maile, ktorý sme vám práve poslali, potvrďte svoju e-mailovú adresu.