Preskočiť na obsah

Git 101: Úvod do správy verzií

Git 101: Úvod do správy verzií

Vo svete vývoja softvéru je Git jedným z najpoužívanejších systémov na správu verzií. Nech už pracujete na samostatnom projekte alebo spolupracujete s veľkým tímom, Git poskytuje spoľahlivý spôsob sledovania zmien vo vašom kóde, správy verzií a efektívnej spolupráce.

Čo je Git?

Git je distribuovaný systém riadenia verzií, ktorý pomáha vývojárom sledovať zmeny v ich zdrojovom kóde v priebehu času. To vám umožňuje:

  • Sledovať zmeny: Uchovávať podrobnú históriu všetkých zmien vykonaných v projekte.
  • Spolupracovať: Pracovať s inými vývojármi bez prepisovania práce jeden druhého.
  • Obnoviť predchádzajúce verzie: Vrátiť sa k predchádzajúcej verzii vášho projektu, ak sa niečo pokazí.

Na rozdiel od centralizovaných systémov riadenia verzií Git umožňuje každému používateľovi mať úplnú kópiu histórie projektu na svojom lokálnom počítači, čo uľahčuje prácu offline alebo na rôznych miestach.

Základná terminológia Git

Než sa pustíme do vysvetľovania fungovania Git, zoznámime sa s niektorými základnými pojmami:

  • Repozitár (Repo): Repozitár Git je miesto, kde sú uložené súbory vášho projektu a história verzií. Môže byť lokálny (na vašom počítači) alebo vzdialený (na platformách ako GitHub).
  • Commit: Snímka zmien vykonaných v projekte. Každý commit má jedinečný identifikátor (hash).
  • Vetva: Samostatná línia vývoja, často používaná na prácu na funkciách alebo opravách chýb.
  • Zlúčenie: Proces kombinovania zmien z rôznych vetiev.
  • Pull/Push: Pull označuje stiahnutie zmien zo vzdialeného repozitára, zatiaľ čo Push označuje nahratie vašich zmien do vzdialeného repozitára.
  • Klonovanie: Vytvorenie kópie vzdialeného repozitára na vašom lokálnom počítači.

Príklad jednoduchého stromu vetiev:

main main
|-- features
|-- new-login features/new-login
|-- audit-logs features/audit-logs
|-- fix
|-- missing-privacy-link fix/missing-privacy-link

Nastavenie Git

Predtým, ako začnete používať Git, musíte ho nainštalovať na svoj počítač. Postupujte takto:

1. Inštalácia Git

  • V systéme macOS:

V systéme Mac existuje viacero spôsobov, ako to urobiť. Základný postup je nasledujúci:

$ brew install git
  • V systéme Linux:

Inštalácia git v systéme Linux sa vždy vykonáva na distribúcii. Nasledujúci príkaz nainštaluje git v systémoch založených na Ubuntu/Debian.

$ sudo apt-get install git
  • V systéme Windows:

Najlepší spôsob, ako používať Git v systéme Windows, je použiť WSL2 a Git. Viac informácií nájdete na stránke https://learn.microsoft.com/en-us/windows/wsl/tutorials/wsl-git

2. Konfigurácia Git

Po inštalácii by ste mali nastaviť svoje používateľské meno a e-mail, ktoré budú spojené s vašimi commitmi.

$ git config --global user.name „Iron man“
$ git config --global user.email „iron.man@starkindustries.com“

Nastavenia môžete skontrolovať pomocou:

$ git config --list

Základný pracovný postup Git

Tu je rýchly a jednoduchý pracovný postup, ktorý vám pomôže začať pracovať s Git, prevedie vás základmi nastavenia repozitárov, sledovania zmien a hladkej spolupráce s ostatnými.

1. Inicializácia repozitára

Ak chcete vytvoriť nový repozitár Git v existujúcom adresári, prejdite do tohto adresára a spustite:

$ git init

Týmto sa inicializuje nový prázdny repozitár Git.

2. Pridajte súbory

Po vykonaní zmien alebo pridaní nových súborov do vášho projektu je potrebné súbory pripraviť na odovzdanie:

$ git add <názov súboru>

Všetky zmeny môžete pridať aj takto:

$ git add .

3. Odovzdajte zmeny

Po pripravení súborov ich odovzdajte s popisnou správou:

$ git commit -m „Chyby neutralizované a systém beží hladšie ako Jarvis. Nech to tak zostane, ľudia!“

4. Vytvorte vetvu

Ak chcete vytvoriť novú vetvu pre funkciu alebo opravu chyby:

$ git checkout -b feature-branch

Týmto vytvoríte a prejdete na novú vetvu s názvom feature-branch.

5. Zlúčenie vetvy

Po práci na vetve a potvrdení zmien ju môžete zlúčiť späť do hlavnej vetvy:

$ git checkout main
$ git merge feature-branch

6. Odoslanie zmien do vzdialeného repozitára

Ak pracujete so vzdialeným repozitárom (napríklad na GitHub alebo GitLab) a lokálne ste vykonali niektoré zmeny, ktoré ste pripravení zdieľať so svetom (alebo svojím tímom), môžete tieto zmeny ľahko odoslať do vzdialeného repozitára. Týmto spôsobom si všetci ostatní môžu stiahnuť najnovšiu verziu a zostať synchronizovaní s tým, na čom ste pracovali.

  • Git Push: Operácia push odošle vaše lokálne commity do vzdialeného repozitára a aktualizuje ho vašimi zmenami.
$ git push origin main
Lokálny repozitár
|
o----o----o
|
git push
|
v
o----o----o
Vzdialený repozitár

Na stiahnutie najnovších zmien zo vzdialeného repozitára:

  • Git Pull: Operácia pull stiahne a zlúči zmeny zo vzdialeného repozitára do vášho lokálneho repozitára, čím ho udrží aktuálny.
$ git pull origin main
Vzdialený repozitár
|
o----o----o
^
|
git pull
|
o----o----o
Lokálny repozitár

Vrátenie zmien

Ak ste urobili nejaké zmeny, ale potom ste si to rozmysleli a rozhodli ste sa, že nie sú celkom to, čo chcete, alebo možno len chcete začať od začiatku, môžete tieto zmeny ľahko zrušiť pred ich potvrdením:

$ git checkout -- <názov súboru>

Ak chcete vymazať stagingovú oblasť (kde sú súbory pripravené na ďalšie potvrdenie) a odstrániť všetky zmeny, ktoré ste pridali, môžete ju „resetovať”. Tým sa zrušia všetky súbory, ale vaše skutočné zmeny sa neodstránia – len sa odstránia z pripravenosti na potvrdenie. Je to ako keby ste povedali: „Ups, ešte nie som pripravený na potvrdenie týchto zmien, poďme sa vrátiť o krok späť.

$ git reset

Práca so vzdialenými repozitármi

Tu je návod, ako pripojiť váš lokálny repozitár k vzdialenému, ako je GitHub alebo GitLab.

1. Klonovanie repozitára

Klonovanie existujúceho repozitára:

$ git clone https://github.com/username/repo-name.git

2. Pridanie vzdialeného repozitára

Ak ste lokálne inicializovali nový repozitár a chcete pridať vzdialený repozitár, do ktorého budete posielať zmeny:

$ git remote add origin https://github.com/username/repo-name.git

3. Odoslanie na vzdialený repozitár

Ak chcete odoslať svoje lokálne zmeny do vzdialeného repozitára:

$ git push -u origin main

Záver

Git je výkonný nástroj, ktorý umožňuje vývojárom efektívne spravovať zmeny kódu a spolupracovať s ostatnými. Táto základná príručka Git 101 vám pomôže začať s kontrolou verzií. Ako sa budete s Gitom zoznamovať, objavíte pokročilé funkcie, ako je rebasing, interaktívne staging a ďalšie.

Ďalšie informácie nájdete v oficiálnej dokumentácii Git.