Git clone vytváří pracovní kopii a obvykle přidává vzdálené úložiště pod názvem origin. Úskalí přichází před prvním příkazem: SSH URL využívá váš klíč, HTTPS URL často požaduje token a cílový adresář již nesmí obsahovat užitečné soubory. Věnujte dvě minuty ověření těchto tří bodů před spuštěním skriptu převzatého online.

Vybrat HTTPS nebo SSH před klonováním
Použijte HTTPS pro získání veřejného projektu nebo když nechcete na tomto stroji nastavovat klíč. Pro následné odesílání na GitHub, GitLab nebo vaši platformu obvykle už heslo účtu nestačí: služba požaduje osobní přístupový token.
Použijte SSH, pokud je váš veřejný klíč již přidružen k vašemu účtu na platformě. Tato metoda zabraňuje opětovnému zadávání tokenu, ale selže, pokud je nabídnut špatný klíč nebo pokud SSH agent jej nenačte. Začněte přečtením použité identity:
ssh -T [email protected]
ssh-add -l
Přizpůsobte první hostitele vaší platformě. Odpověď na autentizaci bez vzdáleného shellu je normální u několika poskytovatelů Git. Pokud spravujete více klíčů, zkontrolujte svůj soubor ~/.ssh/config pomocí ssh -G [email protected] před tím, než obviníte Git. Naše příručka pro nastavení SSH pro více serverů vysvětluje, jak stanovit klíč a účet pomocí aliasu.
Vytvořit kopii v prázdném a identifikovatelném adresáři
Přesuňte se do adresáře určeného pro vaše projekty. Bez druhého argumentu Git vytváří adresář podle názvu repozitáře. S výstižným názvem se vyhnete zmatení testovací kopie s tou, která obsahuje vaše změny.
mkdir -p ~/projekty
cd ~/projekty
pwd
ls -la
git clone https://github.com/octocat/Hello-World.git hello-test
cd hello-test
Nespouštějte klonování v adresáři, jehož obsah neznáte. Git obvykle odmítá neprázdný adresář, ale je bezpečnější zkontrolovat pwd a ls -la před příkazem. Pro kopii určenou pouze pro čtení kódu zůstává HTTPS nejjednodušší volbou.
Se SSH vypadá stejná operace takto:
git clone [email protected]:moje-ucet/moje-projekt.git moje-projekt
cd moje-projekt
Nahraďte hostitele, účet a repozitář hodnotami zobrazenými vaší platformou. Nikdy nekopírujte URL přijaté v podezřelém zprávě. Nejprve otevřete oficiální stránku projektu a porovnejte vlastníka, název repozitáře a URL pro klonování.
Zkontrolovat remote a soubory před provedením čehokoliv
Po klonování zkontrolujte původ, aktivní větev a stav adresáře. Tyto příkazy nemění projekt:
git remote -v
git branch --show-current
git status
git log -1 --oneline
find . -maxdepth 2 -type f -name 'README*' -o -name 'INSTALL*'
git remote -v zobrazuje URL používané pro získávání a odesílání změn. Zkontrolujte je před prvním git push, zejména pokud projekt obsahuje konfiguraci pro nasazení. Poté si přečtěte README, soubory INSTALL, závislosti a spouštěcí skripty. Git repozitář může obsahovat platný, starý nebo skutečně riskantní skript, nezískává vaši důvěru jen proto, že klon byl úspěšný.
Pro pozdější získání aktualizace zůstaňte ve zklonovaném adresáři a nejprve zkontrolujte svou práci:
git status
git fetch origin
git log --oneline HEAD..origin/$(git branch --show-current)
git pull --ff-only
git pull --ff-only odmítá automatické sloučení, pokud vaše lokální commity a vzdálené úložiště se rozcházejí. Je to lepší než aktualizace, která míchá změny, když jste ještě nezkontrolovali větev ani remote.
Oficiální dokumentace git clone podrobně popisuje možnosti jako --depth, --branch a --recurse-submodules. Zachovejte je pro identifikované potřeby. Při prvním klonování již ověřená URL, čistý adresář a přečtení README vyhnou většině chyb.