Daugiau
Kaip klonuoti konkrečią "Git" šaką?
Git klonas elgsis kopijuodamas nuotolinę dabartinę darbinę šaką į vietinę.
Ar yra koks nors būdas pačiam klonuoti konkrečią šaką neperjungiant šakų nuotolinėje saugykloje?
2764
3
Pavyzdys:
Naudodami "Git 1.7.10" ir vėlesnes versijas, pridėkite
--single-branch
, kad būtų išvengta visų šakų gavimo. Pavyzdys su "OpenCV 2.4" atšaka:Parinktis
--single-branch
galioja nuo versijos 1.7.10 ir vėlesnės.Taip pat žr. kitą atsakymą, kuriam daugelis žmonių teikia pirmenybę.
Galbūt taip pat norėsite įsitikinti, ar suprantate skirtumą. Skirtumas yra toks: iškvietę
git clone --branch url
, jūs gaunate visas šakas ir tikrinate vieną iš jų. Tai, pavyzdžiui, gali reikšti, kad jūsų saugykloje yra 5 kB dokumentacijos arba wiki šaka ir 5 GB duomenų šaka. Ir kai tik norėsite redaguoti pagrindinį puslapį, galiausiai gali tekti klonuoti 5 GB duomenų.Tai nereiškia, kad
git clone --branch
yra netinkamas būdas tai padaryti, tiesiog ne visada norite to pasiekti, kai klausiate apie konkrečios šakos klonavimą.Tuo metu, kai buvo rašomas pirminis atsakymas žemiau, git neturėjo
--single-branch
parinkties, bet išsaugokime ją, kad piktos bitės būtų visiškai patenkintos.Atsakymas, kurio taip nemėgsta kopijuotojai, buvo toks:
pvz., sakykime, kad norite gauti šaką pavadinimu "branch-05142011".
git branch branch-05142011 origin/branch-05142011
Tai'jums pateiks tokį pranešimą - "Branch branch-05142011 set up to track remote branch branch-05142011 from origin."
Dabar tiesiog patikrinkite šaką, kaip nurodyta toliau, ir turėsite kodą -
git checkout branch-05142011