Ako vytiahnuť úložisko Git v systéme Linux

Git definuje procesy riadenia verzií, ako by sa mali projekty zdieľať. Existuje mnoho webových stránok, ktoré vám umožňujú hostiť vaše projekty Git. GitHub je najobľúbenejšou možnosťou, Bitbucket je ďalšou populárnou alternatívou, obe umožňujú bezplatné účty, ktoré môžu vytvárať neobmedzené verejné alebo súkromné ​​​​úložiská. GitLab ponúka alternatívu s vlastným hosťovaním, ktorá umožňuje súkromný rozvoj bez spoliehania sa na hosting tretích strán.

Proces prvého stiahnutia úložiska Git sa nazýva klonovanie. Klonovanie zahŕňa všetky informácie o úložisku v danom čase, avšak na udržanie aktuálneho úložiska v priebehu času musíte stiahnuť nové verzie. Ak to chcete urobiť, jednoducho otvorte okno terminálu v adresári s lokálnou verziou úložiska a zadajte príkaz „git pull“.

Obsluha tohto príkazu je obzvlášť jednoduchá, ak si chcete stiahnuť aktualizovanú verziu úložiska; lokálna verzia bude aktualizovaná tak, aby zodpovedala vzdialenej verzii. Môžete však vidieť, že ak ste vykonali úpravy vo svojej lokálnej verzii, môžu nastať problémy.

Príkaz „git pull“ v skutočnosti spúšťa dva samostatné príkazy „git fetch“ a „git merge FETCH HEAD“. Podpríkaz „git fetch“ konkrétne stiahne najnovšiu verziu z online úložiska a dočasne ju uloží. Podpríkaz „git merge FETCH HEAD“ potom zlúči vaše miestne zmeny so stiahnutou verziou, pričom uprednostňujú sa novšie odovzdania.

Tip: „Git commit“ je odoslanie zmeny, je možné mať viacero lokálnych a vzdialených commitov, ktoré robia rovnaké alebo odlišné veci. Lokálne odovzdania nie sú viditeľné pre vzdialenú verziu, kým sa zmeny neodošlú. Každé potvrdenie presne uvádza, aké zmeny boli vykonané, a obsahuje časovú pečiatku.

Konflikty medzi lokálnymi a vzdialenými verziami

V ideálnom prípade v scenári zlúčenia nedôjde ku konfliktom a proces zlúčenia sa dokončí automaticky. Zlúčenia môžu byť obzvlášť jednoduché, ak bolo vykonaných málo zmien alebo ak vaše miestne zmeny nezasahujú do žiadnych vzdialených zmien. Ak však existujú konfliktné komplexné zmeny v rovnakej časti kódu, Git vyvolá chybu zlúčenia.

V tomto bode môžete zlúčenie prerušiť príkazom „git merge –abort“ alebo sa pokúsiť konflikty vyriešiť manuálne. Príkazy „git mergetool“ a „git diff“ poskytujú grafický príklad rozdielov, ktoré by mali pomôcť aby bolo čo najjednoduchšie vidieť, aké zmeny je potrebné manuálne použiť, aby sa zlúčenie umožnilo kompletný. Po vyriešení všetkých konfliktov napíšte príkaz „git merge –continue“ na dokončenie zlúčenia.

Príkaz „git mergetool“ otvorí grafický nástroj, ako je tento, ktorý vám pomôže manuálne vyriešiť konflikty.