Git – použitie online

V prvej časti seriálu o systéme Git sme stručne popísali históriu vývoja a vyzdvihli sme jeho výhody. Ďalej sme Git nainštalovali a vyskúšali sme použitie v praxi. Všetko prebiehalo offline na jednom počítači. V tejto časti si náš študent poznámky a otázky skopíruje do online služby GitHub. Tak bude môcť na poznámkach a odpovediach spolupracovať so spolužiakmi.

Umiestňujeme poznámky online

Aby náš študent mohol na poznámkach a odpovediach spolupracovať so spolužiakmi, musí súbory uložiť online do služby, ktorá podporuje Git. Jedna z najznámejších služieb podporujúcich Git online, je zdarma dostupný GitHub. Náš študent (autor) a jeho spolužiaci (prispievatelia) si vytvoria bezplatné účty na adrese github.com/signup.

Na registračnú e-mailovú adresu našim študentom prídu pokyny, podľa ktorých overia e-mailovú adresu a prihlásia sa do svojho účtu. Po prihlásení autor vytvorí nový verejný (public) repozitár s názvom (Repository name) poznamky. V popise (Description) repozitára môže uviesť viac informácií o obsahu repozitára. V časti “Initialize this repository with” označí “Add a README file”, “Choose a license” a vyberie konkrétnu licenčnú dohodu.

Po kliknutí na zelené tlačidlo “Create repository” (ekvivalent ku git init) sa vytvorí priečinok s názvom poznamky a v ňom súbory README.md a LICENSE. Do prvého súboru náš študent uvedie rozsiahlejší popis, do ktorého môže zahrnúť informácie o jeho motivácii a o tom, ako do poznámok prispieť. Ako príklad uvádzame repozitár vytvorený pre potreby tohto návodu: github.com/tiborepcek/websupport

Teraz autor skopíruje súbory poznamky.txt a otazky.txt do online priečinka (repozitára) poznamky. Klikne hore vpravo na tlačidlo “Add file” a následne na “Upload files”. Vyberie oba súbory, nižšie popíše zmeny a nakoniec kliknutím na zelené tlačidlo “Commit changes” uloží súbory online do služby GitHub (ekvivalent ku git commit -m “popis zmeny”).

Odteraz sa presúvame z príkazového riadka do grafického rozhrania webového prehliadača. Tímová online spolupráca pomocou systému Git tak bude jednoduchšia, pretože webová služba GitHub ponúka intuitívne ovládanie s prepracovanou pomocou. Okrem toho nie je potrebné nič inštalovať a Git okamžite funguje na všetkých relevantných operačných systémoch.

Prispievame do poznámok

Ak na GitHube chce niekto zmeniť súbor, ktorý mu nepatrí, vytvára žiadosť o zapísanie navrhovanej zmeny (Pull Request). Autor si navrhované zmeny prečíta (ekvivalent ku git log -p) a rozhodne sa, či zmeny nakoniec zapíše (merge) do hlavnej vetvy (main branch).

V prípade, že sa ktokoľvek, kto súbor nevlastní (nie je jeho autorom), rohodne súbor upraviť a poslať autorovi žiadosť o zapísanie navrhovaných zmien, svoje zmeny mu GitHub uloží pod vlastný účet a pod vlastnú vetvu (patch branch) ako kópiu (fork). Ak sa autor rozhodne návrh na zmenu zapísať do svojej hlavnej vetvy (main branch), zlúči (merge) sa navrhovaný obsah s pôvodným obsahom. Vznikne tak doplnený obsah, ktorý je výsledkom spolupráce dvoch alebo aj viacerých ľudí. V tomto prípade vystupuje autor pod účtom @tiborepcek a prispievateľ (contributor) pod účtom @tiborepcek2 takto:

Vľavo súbor poznamky.txt otvoril autor, vpravo prispievateľ. Autor si zmeny vo svojom súbore môže uložiť priamo do hlavnej vetvy main (Commit changes) a prispievateľ môže zmeny autorovi navrhnúť (Propose changes).
Prispievateľ takto pridá žiadosť autorovi o zapísanie navrhovanej zmeny (Create pull request), ktorá je zatiaľ uložená iba pod účtom prispievateľa v rovnomennom repozitári vo vetve patch-1. Na autorovej strane je súbor zapísaný v hlavnej vetve main (tu sa prejavuje nelineárnosť Gitu), pričom autor môže spojiť (merge) obsah prispievateľovej vetvy patch-1 do svojej hlavnej vetvy main.
Vľavo návrh na zmenu (Pull request) z pohľadu autora, vpravo z pohľadu prispievateľa. Autor môže nechať navrhovanú zmenu zapísať (Merge pull request) do hlavnej vetvy main.
Vľavo autor nechal zapísať navrhovanú zmenu (Confirm merge), pričom sa stav návrhu na zmenu (Pull request) zmenil na autorovej aj prispievateľovej strane zo zeleného otvoreného (Open) na fialový zapísaný (Merged).

V histórii zmien súboru poznamky.txt teraz nájdeme druhý záznam s kontrolným súčtom 9ec8b8cfd6cdcc063e935623f7ab4d18bba52e9b, ktorý dokladá zapísanie navrhovanej zmeny, pričom podobne ako príkaz git log -p ukazuje aj konkrétne zmeny v súbore. Takýmto spôsobom môže do poznámok prispieť ktokoľvek s overeným účtom na službe GitHub.

Ak to licencia dovoľuje, môže si ktokoľvek celý obsah priečinka (nie iba jeden súbor) skopírovať pod svoj účet (fork) a pracovať na ňom podľa svojich predstáv. Prípadne je možné uložiť obsah priečinka aj offline (distribuovaný repozitár): zelené tlačidlo “Code” vpravo hore > “Download ZIP” (resp. git clone https://github.com/tiborepcek/websupport.git)

Ako Git spoznať hlbšie

Git a jeho online prevedenie GitHub ponúkajú viac možností, ktorým sme sa v tomto návode zámerne nevenovali. Spomenuli a vysvetlili sme však základné piliere, na ktorých Git stojí, a na ktorých je možné založiť ďalšie štúdium systému Git, čím sme splnili zameranie návodu na začiatočníkov.

Kvalitný zdroj informácií a konkrétnych príkladov z praxe poskytuje zdarma dostupná otvorená publikácia z edície CZ.NIC pod názvom PRO GIT. Ide o český preklad úspešnej rovnomennej knihy, ktorú pôvodne napísal SCOTT CHACON v angličtine. Knihu si môžete stiahnuť vo formátoch PDF, EPUB a MOBI.

Zhrnutie

V druhej časti seriálu sme sa pozreli na použitie nástroja Git v online prostredí určenom na spoluprácu. Konkrétne sme použili online službu GitHub a ukázali sme si, ako prispievateľ môže navrhnúť autorovi zápis zmeny do súboru. Autor navrhovanú zmenu nechal zapísať do svojho súboru, čím sme uzavreli základný proces online spolupráce s využitím nástroja Git.

Aktualizované 22. marca 2022

Bol pre vás tento návod nápomocný?

Mohlo by vás tiež zaujímať:

Spýtajte sa nás, radi poradíme
Po - Ne 8:00-22:00
Kontaktovať podporu