Rad s spajanjem i brisanjem grana
Napravimo prvo glavnu granu, stavimo nekoliko urezivanja, stvorimo novu granu koja se naziva značajke, dodamo nekoliko predavanja, a zatim se vratimo na master i ponovo se obvežemo. Evo naredbi:
$ mkdir moja igra$ cd moja igra
$ git init
$ echo "Odluka o dizajnu 1: Brainstarm" >> dizajn.txt
$ git dodaj -A
$ git commit -m "C0: Započeti projekt"
$ echo "Odluka o dizajnu 2: Napiši kod" >> dizajn.txt
$ git dodaj -A
$ git commit -m "C1: Predani kod"
Značajke grane $ git
$ git značajke naplate
$ echo "Dodaj značajku 1" >> značajka.txt
$ git dodaj -A
$ git commit -m "C2: Značajka 1"
$ echo "Dodaj značajku 2" >> značajka.txt
$ git dodaj -A
$ git commit -m "C3: Značajka 2"
$ git checkout master
$ echo "Ponovno mijenjanje gospodara" >> dizajn.txt
$ git dodaj -A
$ git commit -m "C4: Izmijenjeno glavno"
Gornje naredbe stvorile su sljedeću situaciju:
Možete provjeriti povijest dviju grana da biste vidjeli koje obveze imaju:
$ git statusNa majstoru grane
ništa za obvezivanje, radni direktorij čist
$ git log --oneline
2031b83 C4: Izmijenjeno glavno
1c0b64c C1: Predani kod
$ git značajke naplate
Prebačeno na grane "značajke"
$ git log --oneline
93d220b C3: Značajka 2
ad6ddb9 C2: Značajka 1
1c0b64c C1: Predani kod
ec0fb48 C0: Započeti projekt
Sad pretpostavimo, želite sve promjene iz grane značajki unijeti u našu glavnu granu. Morat ćete započeti postupak s odredišta spajanja. Budući da se želimo spojiti u glavnu granu, morate pokrenuti postupak od tamo. Pa provjerimo glavnu granu:
$ git checkout masterPrebačeno na granu 'master'
$ git status
Na majstoru grane
ništa za obvezivanje, radni direktorij čist
Sada kreirajmo spajanje:
Značajke spajanja $ gitAko u spajanju nema sukoba, otvorit će se uređivač teksta s komentarima:
Spoji grane 'značajke'# Unesite poruku urezivanja kako biste objasnili zašto je ovo spajanje potrebno,
# pogotovo ako spaja ažurirani uzvodno u granu teme.
#
# Linije koje počinju s '#' bit će zanemarene, a prazna poruka će se prekinuti
# počiniti.
Možete izmijeniti komentare ili prihvatiti zadane. Izlaz spajanja trebao bi prikazati ovakve rezultate:
Spajanje izvedeno 'rekurzivnom' strategijom.značajka.txt | 2 ++
1 datoteka promijenjena, 2 umetanja (+)
stvoriti način rada 100644 značajka.txt
Nakon spajanja imate sljedeći uvjet:
Ako provjerite zapisnike, pronaći ćete:
$ git statusNa majstoru grane
ništa za obvezivanje, radni direktorij čist
$ git log --oneline
46539a3 C5: Spajanje grane 'značajke'
2031b83 C4: Izmijenjeno glavno
93d220b C3: Značajka 2
ad6ddb9 C2: Značajka 1
1c0b64c C1: Predani kod
ec0fb48 C0: Započeti projekt
Uspješno ste spojili promjene. Međutim, grana značajki i dalje je prisutna.
$ git grana -aznačajke
* ovladati; majstorski
Možete ga izbrisati sljedećom naredbom:
$ git grana -d značajkeAko sada provjerite, trebali biste vidjeti samo glavnu granu:
$ git grana -a* ovladati; majstorski
Zaključak
Svakako redovito provjeravajte ima li neiskorištenih grana i brišite ih. Želite održavati svoje spremište čistim kako biste olakšali navigaciju i razumijevanje.
Daljnje čitanje:
- https: // git-scm.com / book / en / v2 / Git-Branching-Basic-Branching-and-Merging