Git

Ako odstrániť pobočku Git

Ako odstrániť pobočku Git
Vytváranie pobočiek v Gite je jednoduché. Považuje sa to za jednu z najlepších funkcií Gitu. Avšak vzhľadom na prítomnosť vzdialených a miestnych úložísk môže byť odstránenie pobočiek trochu mätúce.

V tejto lekcii urobíme nasledovné:

Táto lekcia by vám mala poskytnúť celkové pochopenie procesu vytvárania a mazania pobočiek, takže máte dobrý prehľad o potrebných krokoch, keď potrebujete vymazať miestnu alebo vzdialenú pobočku.

Začnime.

1. Vytváranie vzdialeného úložiska

Vytvorme priečinok s názvom projekt.git a inicializujte sa ako vzdialené úložisko:

$ mkdir projekt.git
$ cd projekt.git
$ git init -bare

Inicializované prázdne úložisko Git v / Users / zak / _work / LearnGIT / git_delete_branch / project.git /

2. Vytvorenie lokálnej kópie vzdialeného úložiska

Na novom mieste vytvoríme lokálnu kópiu s názvom project_local vzdialeného úložiska pomocou príkazu clone.

Poznámka: Ak pracujete s GitHub alebo BitBucket, klonujete úložisko rovnakým spôsobom. V takom prípade namiesto celej tu použitej cesty k súboru budete mať odkaz SSH.

$ git clone / Users / zak / _work / LearnGIT / git_delete_branch / projekt.git project_local
Klonovanie do 'project_local' ..
varovanie: Zdá sa, že ste naklonovali prázdne úložisko.
hotový.

3. Vytváranie pobočiek v lokálnej kópii

Najprv pridáme súbor do lokálnej kópie a potom ho presunieme do vzdialeného úložiska:

$ cd project_local
 
$ touch ReadMe.TXT
 
$ git pridať -A
 
$ git commit -m "Inicializácia modulu"
 
[master (root-commit) 81eb2a3] Inicializácia modulu
1 súbor zmenený, 0 vložení (+), 0 odstránení (-)
vytvorte režim 100644 ReadMe.TXT
 
$ git push pôvodný majster
 
Počítanie objektov: 3, hotovo.
Písacie objekty: 100% (3/3), 221 bajtov | 0 bajtov / s, hotovo.
Celkom 3 (delta 0), znovu použité 0 (delta 0)
Komu / Používatelia / zak / _work / LearnGIT / git_delete_branch / projekt.git
* [nová pobočka] pán -> pán

Vo vyššie uvedených príkazoch sme vytvorili súbor s názvom ReadMe.txt, pridal ho do miestnej kópie, odovzdal do miestnej kópie a potom zmeny posunul do vzdialeného úložiska alebo hlavnej vetvy pôvodu.

Ak skontrolujete vetvy, v miestnej kópii sa zobrazí hlavná vetva:

$ git pobočka
* pán

Ak zaškrtnete vzdialené pobočky, uvidíte tam aj hlavnú pobočku:

$ git pobočka -r
pôvod / majster

Tip: Môžete použiť voľbu '-a' na spoločné zobrazenie všetkých pobočiek v lokálnych a vzdialených úložiskách.

$ git pobočka -a
* pán
diaľkové ovládače / pôvod / majster

Vytvorme dve vetvy zvané b1 a b2 z hlavnej vetvy:

$ git pobočka b1
$ git pobočka b2

Poďme skontrolovať, či boli pobočky vytvorené:

$ git pobočka
 
b1
b2
* pán

Teraz urobíme niekoľko úprav pobočiek:

$ git pokladňa b1
 
Prepnuté na pobočku „b1“
 
$ touch pobočka1.TXT
 
$ git pridať -A
 
$ git commit -m "Úprava pobočky 1"
 
[bl1 a2f488e] Modifikácia vetvy 1
1 súbor zmenený, 0 vložení (+), 0 odstránení (-)
vytvoriť režim 100644 branch1.TXT
 
$ git pokladňa b2
 
Prepnuté na pobočku „b2“
 
$ touch vetva2.TXT
 
$ git pridať -A
 
$ git commit -m "Úprava pobočky 2"
 
[b2 2abb723] Modifikácia vetvy 2
1 súbor zmenený, 0 vložení (+), 0 odstránení (-)
vytvorte režim 100644 branch2.TXT

Poďme skontrolovať stav miestnej a vzdialenej pobočky:

$ git pobočka
 
b1
* b2
pán
 
$ git pobočka -r
 
pôvod / majster

Vidíme lokálne, že máme tri pobočky master, b1 a b2. Ale vo vzdialenom úložisku máme iba hlavnú vetvu.

4. Posun pobočiek do vzdialeného úložiska

Posuňme vetvu b1 do vzdialeného úložiska:

$ git push origin b1
 
Počítanie objektov: 2, hotovo.
Delta kompresia s použitím až 4 vlákien.
Kompresia objektov: 100% (2/2), hotovo.
Písacie objekty: 100% (2/2), 249 bajtov | 0 bajtov / s, hotovo.
Celkom 2 (delta 0), znovu použité 0 (delta 0)
Komu / Používatelia / zakh / _work / LearnGIT / git_delete_branch / projekt.git
* [nová pobočka] b1 -> b1

Môžete skontrolovať stav miestnej a vzdialenej pobočky:

$ git pobočka
 
b1
* b2
pán
 
$ git pobočka -r
 
pôvod / b1
pôvod / majster

Z vyššie uvedených stavov vetiev vidíme, že vetva b1 je k dispozícii aj na diaľku.

5. Lokálne mazanie pobočiek

Pobočky môžete lokálne vymazať pomocou voľby -d alebo -D.

vetva git -d

Najprv skontrolujme hlavnú vetvu, aby sme mohli odstrániť vetvy b1 a b2.

$ git pokladňa, majster
 
Prepnuté na pobočku „hlavný“
Vaša pobočka je aktuálna s označením „origin / master“.

Vyskúšajme najskôr voľbu -d na odstránenie vetvy b1:

$ git pobočka -d b1
 
chyba: Pobočka 'b1' nie je úplne zlúčená.
Ak ste si istí, že ho chcete vymazať, spustite 'git branch -D b1'.

Chyba vám hovorí, že musíte zlúčiť zmeny z vetvy b1. Toto je ochrana, aby ste omylom nestratili prácu na pobočkách. Môžete použiť voľbu -D na vynútené odstránenie zlúčenia. Ale v tomto prípade spojme zmeny z b1 a b2 na master a prenesme ich do vzdialeného úložiska.

$ git zlúčenie b1
 
Aktualizuje sa 81eb2a3… a2f488e
Rýchlo vpred
pobočka1.txt | 0
1 súbor zmenený, 0 vložení (+), 0 odstránení (-)
vytvoriť režim 100644 branch1.TXT
 
$ git zlúčenie b2
 
Zlúčenie uskutočnené pomocou „rekurzívnej“ stratégie.
vetva2.txt | 0
1 súbor zmenený, 0 vložení (+), 0 odstránení (-)
vytvorte režim 100644 branch2.TXT
 
$ git push pôvodný majster
 
Počítanie objektov: 4, hotovo.
Delta kompresia s použitím až 4 vlákien.
Kompresia objektov: 100% (4/4), hotovo.
Písacie objekty: 100% (4/4), 454 bajtov | 0 bajtov / s, hotovo.
Celkom 4 (delta 1), znovu použité 0 (delta 0)
Komu / Používatelia / zak / _work / LearnGIT / git_delete_branch / projekt.git
81eb2a3… 34db496 hlavný -> hlavný

Teraz skúste znova vetvy odstrániť:

$ git pobočka
 
b1
b2
* pán
 
$ git pobočka -d b1
 
Vymazaná vetva b1 (bola a2f488e).
 
$ git pobočka -d b2
 
Vymazaná vetva b2 (bola 2abb723).
 
$ git pobočka
 
* pán

Úspešne ste lokálne odstránili vetvy b1 a b2.

6. Odstraňovanie vzdialených pobočiek

Keď skontrolujete vzdialené vetvy, stále sa zobrazuje b1:

$ git pobočka -r
 
pôvod / b1
pôvod / majster

Na odstránenie vzdialenej vetvy môžete použiť nasledujúci príkaz:

git push --vymazať

Takže môžete odstrániť vzdialenú vetvu b1 nasledujúcim spôsobom:

$ git push origin - odstrániť b1
 
Komu / Používatelia / zakh_eecs / _work / LearnGIT / git_delete_branch / projekt.git
- [vypustené] b1

Ak teraz skontrolujete svoje vzdialené pobočky, už by ste nemali vidieť b1:

$ git pobočka -r
 
pôvod / majster

Gratulujem! Úspešne ste odstránili všetky pobočky, ktoré ste vytvorili. Precvičte si vytváranie ďalších pobočiek a ich odstraňovanie, aby ste si osvojili proces odstraňovania pobočiek Git.

Ďalšie štúdium:

  • https: // git-scm.com / book / en / v1 / Git-Branching-What-a-Branch-Is
  • https: // git-scm.com / book / en / v2 / Git-Branching-Branches-in-a-Nutshell
  • https: // git-scm.com / book / en / v2 / Git-Branching-Basic-Branching-and-Merging
Hry Top 10 hier, ktoré sa dajú hrať na Ubuntu
Top 10 hier, ktoré sa dajú hrať na Ubuntu
Platforma Windows je jednou z dominujúcich platforiem pre hry kvôli obrovskému percentu hier, ktoré sa dnes vyvíjajú na natívnu podporu systému Window...
Hry 5 najlepších arkádových hier pre Linux
5 najlepších arkádových hier pre Linux
V dnešnej dobe sú počítače vážne stroje používané na hranie hier. Ak nemôžete dosiahnuť nové najvyššie skóre, budete vedieť, čo tým myslím. V tomto pr...
Hry Battle For Wesnoth 1.13.6 Vývoj uvoľnený
Battle For Wesnoth 1.13.6 Vývoj uvoľnený
Battle For Wesnoth 1.13.6 vydané minulý mesiac, je šiestym vývojovým vydaním v 1.13.séria x a prináša množstvo vylepšení, najmä používateľského rozhra...