"Git fetch origin" ve "git remote update origin" arasındaki fark nedir?


Yanıtlar:


133

Bu şekilde kullanıldığında hiç fark etmez.

remote updateçok yüksek seviyeli bir komuttur - gruplandırılmış uzaktan kumandaları ( remotes.<group> = <list>) destekler ve tüm uzaktan kumandaları günceller (olanlar hariç)remote.<name>.skipDefaultUpdate ayarlanmış ) destekler, ancak daha özel getirme seçeneklerinden hiçbirini desteklemez. Kaputun altında, yine de, varsayılan seçeneklerle getirme ile aynı şeyi yapar.

remote updateGit fetch yerine öneren cevap aslında uzak bir isim olmadan önermekti, sadece argüman olarak adlandırılmış olanı değil, sadece hepsini getirmek uğruna. Bu eşdeğerdirgit fetch --all .

Getirme ve uzaktan güncellemenin v1.6.6.1'e (23 Aralık 2009'da yayınlandı) kadar aslında aynı kod yolunu kullanmadığını da eklemeliyim. Bundan önce bile, temelde aynı şeyi yaptılar, sadece farklı kod kullanarak (muhtemelen köşe durumlarda biraz farklı davranıyorlar, ama kafamın tepesinde bir şey düşünemiyorum).


1
Çok ilginç. +1. Git sürüm notlarına bakarsanız (burada derlediğim pastebin.com/LNhRhQS3 ), sadece 1.7.0'ın (1.6.6.2'den hemen sonra) " git fetch --all" " " yerine kullanılmasına izin verdiği görülmektedir git remote update.
VonC

Ah, fetch --alliçeri girdiğimde gerçekten kontrol etmedim . Bütün bunları sadece git.git klonumun varyasyonları git log --grep=...ve varyasyonları ile git describe --containsyapıyorum.
Cascabel

Hm, bu tuhaf - commit 9c4a036b "'git fetch' için --all seçeneği öğretin" ve git define --contains verir v1.6.6.1~1^2~9. (Cevabımda bahsettiğim uzaktan güncelleme değişikliğiyle aynı sürüm, küçük sürüm sürümünü buraya eklemek için güncellendi). Belki de sürüm notlarına girmek için geç kalmıştı?
Cascabel

@Jefromi: Bu bilgiyi ortaya çıkarmak için güzel bir yol, ancak önce sürüm notlarına bakmayı tercih ediyorum ve tüm sürüm notları için tek bir sayfanın olmaması , dolayısıyla pastebin'e küçük kopyala-yapıştırımın olmaması beni hayal kırıklığına uğrattı .
VonC

@Jefromi: doğru ... şimdi commit 9c4a036b'nin neden 1.7'den önceki resmi sürümde başaramadığını görmek için tüm "Git'te ne pişiriyor" u bir araya getirmenin bir yolunu bulmalıyım;)
VonC
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.