Ovládanie verzií Git

Sarah Guthals

GitHub, ako by to isté naznačovalo, je postavený na Gite. Git je typ systému na správu verzií a je to bezplatný a otvorený zdroj, čo znamená, že ho môže používať ktokoľvek, stavať na ňom a dokonca ho aj rozširovať.

GitHub Vďaka produktom je používanie Gitu jednoduché, ale ak vás zaujíma, môžete pomocou Gitu sledovať aj svoje sólové projekty na počítači.



Vyskúšajte jednoduchý Git na termináli

Pomocou terminálu Git pre Windows je používanie terminálu v počítačoch Mac, Windows alebo Linux úplne rovnaké. A terminál je aplikácia, ktorá vám umožňuje komunikovať s počítačom textovo - inými slovami, namiesto dvojitého klikania a ťahania zadávate príkazy na navigáciu v počítači.

Ak používate systém Mac alebo Linux, terminál je už v počítači nainštalovaný. Ak používate počítač so systémom Windows, nainštalujte si Git pre Windows. Kliknite Stiahnuť ▼ aby ste získali prístup k Git Bash, emulátoru, ktorý vám umožňuje komunikovať s Gitom rovnako ako na termináli Linux alebo Mac. Dostanete tiež Git GUI, ktoré vám poskytne užívateľské rozhranie pre takmer všetky príkazy Git, ktoré môžete zadať do Git Bash, a integráciu shellu, aby ste mohli rýchlo otvoriť Git Bash alebo Git GUI z ľubovoľného priečinka.

Mnoho vývojárov v systéme Windows dáva prednosť použitiu prostredia PowerShell ako svojho terminálového prostredia. Môžeš použiť Git v prostredí PowerShell .

Najskôr vyhľadajte aplikáciu Terminál:

  • V systéme Mac môžete kliknúť na lupu v pravom hornom rohu plochy a napísať Terminál , vyberte terminál zo zoznamu aplikácií a stlačte kláves Enter alebo na neho kliknite.
  • V systéme Linux stlačte súčasne klávesy Ctrl-Alt-T a otvorí sa okno terminálu.
  • V systéme Windows kliknite na ponuku Windows v pravom dolnom rohu plochy a vyhľadajte Git Bash, vyberte aplikáciu Git Bash zo zoznamu výsledkov vyhľadávania a stlačte kláves Enter alebo na ňu kliknite.

Po otvorení aplikácie zadajte git --version v termináli. Ak máte nainštalovaný Git, malo by sa vám zobraziť číslo verzie, ako je uvedené v nasledujúcom kóde ($ by už mal byť na riadku, takže ho nemusíte písať). V opačnom prípade môžete sledovať týchto pokynov .

Pri používaní príkazového riadku musíte byť veľmi opatrní, čo presne píšete. V nasledujúcom kóde je prvou inštrukciou zadanie git --version. Mali by ste si uvedomiť, že medzi gitom a zvyškom inštrukcie sa objavuje medzera, ale žiadne ďalšie medzery. Mali by ste si tiež všimnúť dve pomlčky pred slovnou verziou. Môžu sa ľahko minúť, takže buďte opatrní!

V prípade počítačov Mac alebo Linux by sa malo zobraziť niečo také:

$ git --version

git version 2.16.3

$

V systéme Windows by sa malo zobraziť niečo také:

$ git --version

git version 2.20.1.windows.1

$

Ďalej pomocou terminálu prejdite na plochu a vytvorte nový priečinok s názvom git practice. Mali by ste zadať nasledujúce príkazy:

$ cd ~/Desktop

$ mkdir git-practice

$ cd git-practice

$

Ak napíšete pwd, mali by ste vidieť, že sa teraz nachádzate v priečinku git-practice, ktorý je na ploche. Môže to vyzerať asi takto:

$ pwd

$ /Users/sguthals/Desktop/git-practice

$

Now, you can tell git to track this folder using the init command.

$ git init

Initialized empty Git repository in /Users/sguthals/Desktop/git-practice

$

Potom sa uistite, že máte čistý priečinok. Môžete skontrolovať pomocou príkazu status :

$ git status

On branch master

No commits yet

nothing to commit (create/copy files and use 'git add' to track)

$

Potom môžete vytvoriť súbor, aby mohol Git začať sledovať a potvrdiť, že sa súbor nachádza v priečinku:

$ echo 'practicing git' > file.txt

$ ls

file.txt

$

V systéme Mac môžete tento priečinok otvoriť vo vyhľadávači pomocou open príkaz:

$ open .

$

V systéme Linux môžete tento priečinok otvoriť pomocou príkazu nautilus :

$ nautilus .

$

V systéme Windows môžete tento priečinok otvoriť pomocou explorer príkaz:

$ explorer .

$

V tomto príklade vložíme . ako pre každý príkaz. . povie terminálu, aby otvoril aktuálny priečinok. S týmito príkazmi môžete tiež použiť inú cestu na otvorenie ďalších priečinkov.

Po otvorení priečinka dvakrát kliknite na súbor s názvom file.txt a súbor sa otvorí v aplikácii TextEdit v systéme Mac, gedit v systéme Linux a Poznámkovom bloku v systéme Windows. Vidíte, že slová praktizujúce git tam skutočne sú.

Zatvorte súbor. Teraz môžete povedať Gitu, že to chcete uložiť ako konkrétnu verziu. Späť v termináli:

$ git add file.txt

$ git commit -m 'Adding my file to this version'

[master (root-commit) 8d28a21] Adding my file to this version

1 file changed, 1 insertion(+)

kupón výrobcu ventolin 2019

Create mode 100644 file.txt

$ git status

On branch master

nothing to commit, working tree clean

$

Súbor môžete zmeniť v textovom súbore. Znova otvorte súbor, zmeňte text na Ahoj! Dnes cvičím git! a potom kliknite na Súbor → Uložiť a zatvorte textovú aplikáciu.

Keď sa vrátite späť do terminálu a znova skontrolujete stav svojho projektu, mali by ste vidieť, že si Git všimol, že sa súbor zmenil:

$ git status

On branch master

Changed not staged for commit:

(use 'git add

{use 'git checkout -- …' to discard changed in working directory)

modified: file.txt

no changed added to commit (use 'git add' and/or 'git commit -a')

$

Commit túto verziu vášho súboru znova a všimnite si, že Git rozpoznáva, že všetko bolo uložené do novej verzie:

$ git add file.txt

$ git commit -m 'I changed the text'

[master 6d80a2a] I changed the text

1 file changed, 1 insertion(+), 1 deletion(-)

$ git status

On branch master

nothing to commit, working tree clean

$

Ak je váš terminál príliš neprehľadný, môžete napísať clear vyčistiť určitý priestor a urobiť ho vizuálne príťažlivejším. Nebojte sa; vždy sa môžete posunúť nahor a zobraziť všetko, čo ste zadali skôr!

Povedzte, že sa chcete skutočne pozrieť na pôvodnú zmenu; keď si pridal cvičný git. Najskôr získajte protokol všetkých záväzkov, ktoré ste vykonali:

$ git log

commit 6d80a2ab7382c4d308de74c25669f16d1407372d (HEAD -> master)

Author: sguthals

Date: Sun Dec 9 08:54:11 2018 -0800

I changed the text

commit 8d28a21f71ec5657a2f5421e03faad307d9eec6f

Author: sguthals

Date: Sun Dec 9 08:48:01 2018 -0800

Adding my file to this version

$

Potom požiadajte Git, aby vám ukázal prvý commit ktorý ste vytvorili (najspodnejší). Uistite sa, že zadávate svoj jedinečný commit hash. V týchto príkladoch začína hodnota hash znakom 8d28a2. Uistite sa, že ste zadali celý hash, ktorý sa zobrazuje vo vašom denníku Git:

Namiesto toho, aby ste napísali celý hash (a mohli by ste mať preklep), môžete hash zvýrazniť myšou, kliknúť pravým tlačidlom myši a zvoliť kopírovanie a potom po git checkout môžete kliknúť pravým tlačidlom myši a zvoliť Prilepiť. Používanie klávesových skratiek Ctrl + C alebo Command -C nefunguje

$ git show 8d28a21f71ec5657a2f5421e03faad307d9eec6f

commit 8d28a21f71ec6567a2f5421e03faad307d9eec6f

Author: sguthals

Date: Sun Dec 9 08:48:01 2018 -0800

Adding my file to this version

diff --git a/file.txt b/file.txt

new file mode 100644

index 0000000..849a4c7

prednizón 5 mg pre psy

--- /dev/null

+++ b/file.txt

@@ -0,0 +1 @@

+practicing git

$

Vidíte to practicing git bol pridaný do súboru v pôvodnom potvrdení.

Ďalšie informácie o tom, ako používať git na príkazovom riadku, nájdete v nasledujúcich zdrojoch:

Pre server je k dispozícii ďalších pár zdrojov učenie a porozumenie Git , ktoré používateľom systému Windows umožňujú podobný pracovný tok, pretože sú vizualizáciami hostenými na webových stránkach. Prvý odkaz je dobrá sada cvičení vedená vlastným názorom, zatiaľ čo druhý odkaz sa najlepšie hodí pre ľudí, ktorí rozumejú Gitu slušne a chcú preskúmať, čo sa stane v rôznych scenároch, alebo pre ľudí, ktorí majú skúsenejšieho používateľa Gitu ich vedenie.

Rozvetvenie Git podľa spolupracovníka

Git sa líši od ostatných systémov na správu verzií, pretože má rýchle vetvenie, ktoré je znázornené na nasledujúcom obrázku. Vetvenie je funkcia Git, ktorá v podstate kopíruje kód (každý branch je kópiou kódu), umožňuje vykonávať zmeny v konkrétnej kópii a potom zlúči vaše zmeny späť do hlavnej (master) vetvy .

Gitové vetvy

Príklad pracovného postupu pre pobočky Git.

Pri písaní kódu budete pridávať súbory a vykonávať zmeny vo svojej pobočke master . Obrázok načrtáva konkrétny pracovný postup, pri ktorom dvaja ľudia spolupracujú na rovnakom súbore. Osoba 1 vytvorí novú vetvu s názvom MyBranch a vykoná v súbore nejaké zmeny. Osoba 2 tiež vytvorí novú vetvu s názvom YourBranch a vykoná určité zmeny v rovnakom súbore. Túto zmenu môžete vidieť v políčku 1.

Rozdiel (nazývaný diff) medzi vetvou master a MyBranch vidíte v políčku 2.

Potom Osoba 1 merges vykoná svoje zmeny pomocou master branch, ako vidíte v políčku 3.

Osoba 2 urobila svoje vlastné zmeny, ale pred zlúčením sa uistí, že má najaktuálnejšiu verziu master branch, ktorá má teraz zmeny od osoby 1. diff je viditeľný v poli # 4. Všimnite si, aký text je v oboch súboroch.

Nakoniec Osoba 2 uznáva, že ich zmeny prepíšu zmeny osoby 1 a zlúčia ich zmeny s hlavným serverom, vďaka čomu bude mať finálna verzia zmeny od osoby 2. Pole č. 5 zobrazuje toto konečné zlúčenie, pričom master branch má posledné zmeny .

Obrázok zobrazuje iba jeden pracovný tok, ktorý môže existovať, keď na kóde pracuje viac osôb, a má popisovať vetvenie. Získajte podrobnejší prehľad o Git a rozvetvenie .

Rozvetvenie Git podľa funkcie

Ďalším bežným spôsobom použitia branching je, aby každá vlastnosť, ktorú vyvíjate, bola na inom branch, bez ohľadu na spolupracovníka, ktorý túto funkciu vytvára.

Myšlienku rozvetvenia môžete rozšíriť o funkciu, aby ste mali aj jednu vetvu, ktorá je vašou production vetvou. Túto vetvu uvidia vaši používatelia. Potom môžete mať vetvu development , do ktorej môžete zlúčiť funkcie bez toho, aby ste zmenili to, čo vidia vaši používatelia.

Tento typ vetvenia vám umožňuje vytvoriť veľa rôznych funkcií, zlúčiť ich všetky do development branch, skontrolovať, či všetky fungujú tak, ako chcete, a potom merge vetvu development do vetva production keď viete, že je pripravená pre vašich používateľov.

Gitové vetvenie pre experimentovanie

Môžete tiež vytvoriť vetvy na testovanie, či niečo funguje, a potom branch úplne vyhodiť.

Tento typ vetvenia môže byť užitočný, ak chcete vyskúšať napríklad úplne nové usporiadanie webových stránok. Môžete vytvoriť tri rôzne vetvy, každú s iným rozložením. Keď sa rozhodnete, ktoré rozloženie sa vám najviac páči, môžete jednoducho odstrániť ďalšie dve vetvy a zlúčiť vetvu s obľúbeným rozložením do master.