Git

Jak odstranit větev Git

Jak odstranit větev Git
Vytváření poboček v Gitu je snadné. Je to považováno za jednu z nejlepších funkcí Gitu. Avšak vzhledem k přítomnosti vzdálených a místních úložišť může být odstranění poboček trochu matoucí.

V této lekci provedeme následující:

Lekce by vám měla poskytnout celkové pochopení procesu vytváření a mazání větví, abyste měli dobrý přehled o nezbytných krocích, když potřebujete odstranit místní nebo vzdálenou větev.

Začněme.

1. Vytvoření vzdáleného úložiště

Vytvořme složku s názvem projekt.git a inicializujte se jako vzdálené úložiště:

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

Inicializované prázdné úložiště Git v / Users / zak / _work / LearnGIT / git_delete_branch / project.git /

2. Vytvoření místní kopie vzdáleného úložiště

V novém umístění vytvořme místní kopii s názvem project_local vzdáleného úložiště pomocí příkazu clone.

Poznámka: Pokud pracujete s GitHub nebo BitBucket, budete postupovat stejným způsobem při klonování úložiště. V takovém případě budete mít místo celé zde použité cesty k souboru odkaz SSH.

$ git clone / Users / zak / _work / LearnGIT / git_delete_branch / projekt.git project_local
Klonování do 'project_local' ..
varování: Zdá se, že jste naklonovali prázdné úložiště.
Hotovo.

3. Vytváření větví uvnitř místní kopie

Nejprve přidáme soubor do lokální kopie a poté jej přeneseme do vzdáleného úložiště:

$ cd project_local
 
$ touch ReadMe.txt
 
$ git přidat -A
 
$ git commit -m "Inicializace modulu"
 
[master (root-commit) 81eb2a3] Inicializace modulu
1 soubor změněn, 0 vložení (+), 0 odstranění (-)
vytvořit režim 100644 ReadMe.txt
 
$ git push origin master
 
Počítání objektů: 3, hotovo.
Psaní objektů: 100% (3/3), 221 bajtů | 0 bajtů / s, hotovo.
Celkem 3 (delta 0), znovu použito 0 (delta 0)
Komu / Uživatelé / zak / _work / LearnGIT / git_delete_branch / projekt.sakra
* [nová větev] pán -> pán

Ve výše uvedených příkazech jsme vytvořili soubor s názvem ReadMe.txt, přidal jej do místní kopie, přidělil ji místní kopii a poté provedl změny do vzdáleného úložiště nebo hlavní větve původu.

Pokud zkontrolujete větve, uvidíte hlavní větev v místní kopii:

$ git větev
* mistr

Pokud zaškrtnete vzdálené větve, uvidíte zde také hlavní větev:

$ git větev -r
původ / pán

Tip: Pomocí možnosti '-a' můžete zobrazit všechny pobočky v lokálních i vzdálených úložištích společně.

$ git větev -a
* mistr
dálkové ovladače / původ / master

Vytvořme dvě větve zvané b1 a b2 z hlavní větve:

$ git větev b1
$ git větev b2

Pojďme zkontrolovat, zda byly vytvořeny větve:

$ git větev
 
b1
b2
* mistr

Nyní provedeme některé úpravy větví:

$ git pokladna b1
 
Přepnuto na větev „b1“
 
$ touch větev 1.txt
 
$ git přidat -A
 
$ git commit -m "Modifikace větve 1"
 
[b1 a2f488e] Modifikace větve 1
1 soubor změněn, 0 vložení (+), 0 odstranění (-)
vytvořit režim 100644 branch1.txt
 
$ git pokladna b2
 
Přepnuto na větev „b2“
 
$ touch větev2.txt
 
$ git přidat -A
 
$ git commit -m "Modifikace větve 2"
 
[b2 2abb723] Modifikace větve 2
1 soubor změněn, 0 vložení (+), 0 odstranění (-)
vytvořit režim 100644 branch2.txt

Podívejme se na stav místní a vzdálené větve:

$ git větev
 
b1
* b2
mistr
 
$ git větev -r
 
původ / pán

Vidíme místně, že máme tři větve master, b1 a b2. Ve vzdáleném úložišti však máme pouze hlavní větev.

4. Posouvání poboček do vzdáleného úložiště

Pojďme posunout větev b1 do vzdáleného úložiště:

$ git push origin b1
 
Počítání objektů: 2, hotovo.
Delta komprese pomocí až 4 vláken.
Komprese objektů: 100% (2/2), hotovo.
Psaní objektů: 100% (2/2), 249 bajtů | 0 bajtů / s, hotovo.
Celkem 2 (delta 0), znovu použito 0 (delta 0)
Komu / Uživatelé / zakh / _work / LearnGIT / git_delete_branch / projekt.sakra
* [nová větev] b1 -> b1

Můžete zkontrolovat stav místní a vzdálené pobočky:

$ git větev
 
b1
* b2
mistr
 
$ git větev -r
 
původ / b1
původ / pán

Z výše uvedených stavů větví vidíme, že větev b1 je k dispozici také na dálku.

5. Lokální mazání poboček

Pobočky můžete lokálně odstranit pomocí volby -d nebo -D.

git větev -d

Nejprve se podívejme do hlavní větve, abychom mohli odstranit větve b1 a b2.

$ git pokladna master
 
Přepnuto na větev „master“
Vaše pobočka je aktuální s „origin / master“.

Vyzkoušejte nejprve volbu -d k odstranění větve b1:

$ git větev -d b1
 
chyba: Větev 'b1' není plně sloučena.
Pokud jste si jisti, že jej chcete smazat, spusťte 'git branch -D b1'.

Chyba vám říká, že musíte sloučit změny z větve b1. Jedná se o záruku, abyste omylem neztratili práci na pobočkách. Pomocí volby -D můžete vynutit odstranění sloučení. Ale v tomto případě pojďme sloučit změny z b1 a b2 do hlavního a poslat je do vzdáleného úložiště.

$ git merge b1
 
Aktualizace 81eb2a3… a2f488e
Rychle vpřed
větev1.txt | 0
1 soubor změněn, 0 vložení (+), 0 odstranění (-)
vytvořit režim 100644 branch1.txt
 
$ git merge b2
 
Sloučení provedené „rekurzivní“ strategií.
větev2.txt | 0
1 soubor změněn, 0 vložení (+), 0 odstranění (-)
vytvořit režim 100644 branch2.txt
 
$ git push origin master
 
Počítání objektů: 4, hotovo.
Delta komprese pomocí až 4 vláken.
Komprese objektů: 100% (4/4), hotovo.
Psaní objektů: 100% (4/4), 454 bajtů | 0 bajtů / s, hotovo.
Celkem 4 (delta 1), znovu použito 0 (delta 0)
Komu / Uživatelé / zak / _work / LearnGIT / git_delete_branch / projekt.sakra
81eb2a3… 34db496 hlavní -> hlavní

Nyní zkuste znovu odstranit větve:

$ git větev
 
b1
b2
* mistr
 
$ git větev -d b1
 
Odstraněná větev b1 (byla a2f488e).
 
$ git větev -d b2
 
Odstraněná větev b2 (byla 2abb723).
 
$ git větev
 
* mistr

Úspěšně jste lokálně odstranili větve b1 a b2.

6. Odstranění vzdálených poboček

Když zkontrolujete vzdálené větve, stále se zobrazí b1:

$ git větev -r
 
původ / b1
původ / pán

Ke smazání vzdálené větve můžete použít následující příkaz:

git push --vymazat

Vzdálenou větev b1 tedy můžete odstranit následujícím způsobem:

$ git push origin - odstranit b1
 
Komu / Uživatelé / zakh_eecs / _work / LearnGIT / git_delete_branch / projekt.sakra
- [smazáno] b1

Pokud nyní zkontrolujete vzdálené pobočky, neměli byste již vidět b1:

$ git větev -r
 
původ / pán

Gratulujeme! Úspěšně jste odstranili všechny pobočky, které jste vytvořili. Procvičte si vytváření více větví a jejich mazání, abyste zvládli proces mazání větví Git.

Další studie:

  • 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 Nainstalujte si nejnovější Dolphin Emulator pro Gamecube a Wii na Linuxu
Nainstalujte si nejnovější Dolphin Emulator pro Gamecube a Wii na Linuxu
Emulátor Dolphin vám umožní hrát vybrané hry Gamecube a Wii na osobních počítačích se systémem Linux (PC). Jako volně dostupný herní emulátor s otevř...
Hry Jak používat GameConqueror Cheat Engine v Linuxu
Jak používat GameConqueror Cheat Engine v Linuxu
Tento článek popisuje průvodce používáním cheatovacího modulu GameConqueror v systému Linux. Mnoho uživatelů, kteří hrají hry v systému Windows, často...
Hry Nejlepší emulátory herních konzolí pro Linux
Nejlepší emulátory herních konzolí pro Linux
Tento článek uvádí seznam populárního softwaru pro emulaci herních konzolí, který je k dispozici pro Linux. Emulace je vrstva softwarové kompatibility...