2013-08-30 20 views
18

Aşağıda, belirli bir işlemi kontrol etmek için kullandığım komut yer almaktadır.git klonlama ve tek bir komutla teslim etme

git clone git://repo.git/repo123 
git checkout <commitID> 

Yukarıdakileri tek bir adımda yapmak istiyorum - yalnızca bir git klonu komutuyla.

Bunu yapmak istediğim nedeni repo123 çok büyük. Bu yüzden istediğim işi kontrol etmek bana çok zaman kazandıracak.

--depth seçeneğinin farkındayım. Ama bu durumda, hiçbir işe yaramıyor. Bana nasıl yapılacağını söyleyen var mı?

+0

'--depth' sorunu nedir? – michas

cevap

2

Aynı durumla karşılaşıyordum ve --depth ile Git Clone Komutu ile iyi çalıştı. Ve komutun sonunda -b parametresiyle şube adını/commit/Tag-Name değerini belirtin.

dizimi:

git clone --depth 1 github.com:ORG-NAME/Repo.git -b <Branch-Name/Commit-Number/TAG> 
+2

Bu gerçekten bir SHA1 işlemi için çalışıyor mu? Git 2.5.0 ile denedim ve şube isimlerini ve etiketlerini kabul etmesine rağmen, bu işlemlerle çalışmaz. – meowsqueak

2

mi senin sorunun çıkış büyük veya depoya kendisine olmak? git clone olarak, bir depoyu klonlar, tüm depoyu genellikle tam boyutta alırsınız. (. Zaten önerildiği şekilde sığ bir klon yapıyoruz sürece) yanlış dalı git help clone ait kasada gerçekten buysa

diyor ki:

--no-checkout, -n 
     No checkout of HEAD is performed after the clone is complete. 

-n ile klonlama sonra el

21
kontrol edebilirsiniz
git clone u://r/l --branch x 

hala her şeyi klonlar, ancak yerel HEAD'i o şube için ayarlar;

İlgili konular