Osnove spajanja i brisanja grana Gita

Basics Git Merging



Podružnice vam mogu pomoći da organizirate svoj posao. Međutim, morate biti u mogućnosti spojiti svoj rad kako biste ga učinili koherentnim. Ako nikada ne spojite i ne izbrišete grane, vaša bi povijest mogla postati previše kaotična za razumijevanje.

Rad s spajanjem i brisanjem grananja

Prvo stvorimo glavnu granu, ubacimo nekoliko predaja, stvorimo novu granu pod nazivom značajke, dodamo nekoliko urezivanja, a zatim se vratimo u master i ponovno urezivanje. Evo naredbi:







$mkdirmoja igra
$CDmoja igra
$git init
$izbaciti 'Odluka o dizajnu 1: Brainstarm' >>design.txt
$git add -DO
$git commit -m 'C0: Započeti projekt'
$izbaciti 'Odluka o dizajnu 2: Napišite kod' >>design.txt
$git add -DO
$git commit -m 'C1: Predan kôd'
$git granaobilježja
$git checkoutobilježja
$izbaciti 'Dodaj značajku 1' >>feature.txt
$git add -DO
$git commit -m 'C2: Značajka 1'
$izbaciti 'Dodaj značajku 2' >>feature.txt
$git add -DO
$git commit -m 'C3: Značajka 2'
$git checkoutovladati; majstorski
$izbaciti 'Ponovno mijenjanje gospodara' >>design.txt
$git add -DO
$git commit -m 'C4: Master Modified'

Gore navedene naredbe stvorile su sljedeću situaciju:





Možete provjeriti povijest dviju grana kako biste vidjeli koje obveze imaju:





$git status
Na podružnici
nema obveza, radni imenik čist
$git log --jedna linija
2031b83 C4: Izmijenjeno glavno
1c0b64c C1: Predan kôd

$git checkoutobilježja
Prebačeno na podružnicu'značajke'

$git log --jedna linija
93d220b C3: Značajka2
ad6ddb9 C2: Značajka1
1c0b64c C1: Predan kôd
ec0fb48 C0: Započeti projekt

Pretpostavimo, sada želite unijeti sve promjene iz grane značajki u našu glavnu granu. Morat ćete pokrenuti proces od odredišta spajanja. Budući da se želimo spojiti u glavnu granu, morate pokrenuti proces od tamo. Pa provjerimo glavnu granu:

$git checkoutovladati; majstorski
Prebačeno na podružnicu'ovladati; majstorski'

$git status
Na podružnici
nema obveza, radni imenik čist

Sada napravimo spajanje:



$git spajanjeobilježja

Ako u spajanju nema sukoba, otvorit će vam se uređivač teksta s komentarima:

Spoji granu'značajke'

# Molimo unesite poruku urezivanja kako biste objasnili zašto je to spajanje potrebno,
# pogotovo ako spoji ažurirano uzvodno u granu teme.
#
# Reci koji počinju s '#' bit će zanemareni, a prazna poruka prekinuta
# počiniti.

Komentare možete izmijeniti ili prihvatiti zadane. Izlaz spajanja trebao bi pokazati ovakve rezultate:

Spajanje je izvršilo'ponavljajući'strategija.
feature.txt| 2++
1 datotekapromijenio,2umetanja(+)
način stvaranja100644feature.txt

Nakon spajanja imate sljedeće uvjete:

Ako provjerite zapisnike, pronaći ćete:

$git status
Na podružnici
nema obveza, radni imenik čist

$git log --jedna linija
46539a3 C5: Spoji granu'značajke'
2031b83 C4: Izmijenjeno glavno
93d220b C3: Značajka2
ad6ddb9 C2: Značajka1
1c0b64c C1: Predan kôd
ec0fb48 C0: Započeti projekt

Uspješno ste spojili promjene. Međutim, grana značajki je i dalje prisutna.

$git grana -do
obilježja
*ovladati; majstorski

Možete ga izbrisati sljedećom naredbom:

$git grana -dobilježja

Ako sada provjerite, trebali biste vidjeti samo glavnu granu:

$git grana -do
*ovladati; majstorski

Zaključak

Redovito provjeravajte ima li neiskorištenih grana i izbrišite ih. Želite držati svoje spremište čistim kako biste olakšali navigaciju i razumijevanje.

Daljnje čitanje: