Jak stáhnout úložiště Git v Linuxu

Git definuje procesy správy verzí, jak by měly být projekty sdíleny. Existuje mnoho webových stránek, které vám umožňují hostovat vaše projekty Git. GitHub je nejoblíbenější možností, Bitbucket je další oblíbenou alternativou, oba umožňují bezplatné účty, které mohou vytvářet neomezená veřejná nebo soukromá úložiště. GitLab nabízí alternativu s vlastním hostitelem, která umožňuje soukromý vývoj bez spoléhání se na hosting třetích stran.

Proces prvního stažení úložiště Git se nazývá klonování. Klonování zahrnuje všechny informace o úložišti v daném okamžiku, ale aby bylo úložiště průběžně aktuální, musíte stáhnout nové verze. Chcete-li to provést, jednoduše otevřete okno terminálu v adresáři s místní verzí úložiště a zadejte příkaz „git pull“.

Obsluha tohoto příkazu je obzvláště jednoduchá, pokud si chcete pouze stáhnout aktualizovanou verzi úložiště; místní verze bude aktualizována, aby odpovídala vzdálené verzi. Můžete však vidět, že mohou nastat problémy, pokud jste provedli úpravy ve své místní verzi.

Příkaz „git pull“ ve skutečnosti spouští dva samostatné příkazy „git fetch“ a „git merge FETCH HEAD“. Dílčí příkaz „git fetch“ konkrétně stáhne nejnovější verzi z online úložiště a dočasně ji uloží. Dílčí příkaz „git merge FETCH HEAD“ pak sloučí vaše místní změny se staženou verzí, přičemž jsou preferovány novější revize.

Tip: „git commit“ je odeslání změny, je možné mít více lokálních a vzdálených commitů, které dělají stejné nebo různé věci. Místní potvrzení nejsou pro vzdálenou verzi viditelná, dokud nejsou změny odeslány. Každé potvrzení přesně uvádí, jaké změny byly provedeny, a obsahuje časové razítko.

Konflikty mezi místní a vzdálenou verzí

V ideálním případě ve scénáři sloučení nedojde k žádným konfliktům a proces sloučení se dokončí automaticky. Sloučení může být obzvláště snadné, pokud bylo provedeno málo změn nebo pokud vaše místní změny nenarušují žádné vzdálené změny. Pokud však dojde ke konfliktním komplexním změnám ve stejné části kódu, Git vyvolá chybu sloučení.

V tomto okamžiku můžete buď sloučení zrušit příkazem „git merge –abort“, nebo se pokusit konflikty vyřešit ručně. Příkazy „git mergetool“ a „git diff“ poskytují grafický příklad rozdílů, které by měly pomoci aby bylo co nejjednodušší vidět, jaké změny je třeba ručně použít, aby bylo možné sloučení provést kompletní. Jakmile vyřešíte všechny konflikty, zadejte příkaz „git merge –continue“ pro dokončení sloučení.

Příkaz „git mergetool“ otevře grafický nástroj, jako je tento, který vám pomůže ručně vyřešit konflikty.