В ответ на вопрос о извлечении одного коммита из репозитория git мне порекомендовали использовать git remote update
вместо git fetch
. Я прочитал обе страницы руководства, но не могу сказать, что понял ни одну из них полностью.
Может кто - нибудь объяснить мне , как git fetch origin
и get remote update origin
вести себя по- другому?
Ответы:
При таком использовании нет никакой разницы.
remote update
- это команда очень высокого уровня - она поддерживает сгруппированные удаленные объекты (remotes.<group> = <list>
) и обновляет все пульты (кроме тех, у которыхremote.<name>.skipDefaultUpdate
установлено значение), но не поддерживает какие-либо более конкретные параметры выборки. Однако под капотом он делает то же самое, что и выборка с параметрами по умолчанию.Ответ, рекомендующий
remote update
вместо git fetch, на самом деле рекомендовал его без удаленного имени, просто ради получения всего, а не только того, что указано в качестве аргумента. Это эквивалентноgit fetch --all
.Я должен добавить оговорку, что выборка и удаленное обновление фактически не использовали один и тот же кодовый путь до версии 1.6.6.1 (выпущенной 23 декабря 2009 г.). Однако даже до этого они делали, по сути, одно и то же, просто используя другой код (возможно, в угловых случаях они вели себя немного по-другому, но я не могу придумать что-либо из головы).
источник
git fetch --all
» вместо «git remote update
».fetch --all
вошел. Я делаю все это только по вариациямgit log --grep=...
иgit describe --contains
в моем клоне git.git.v1.6.6.1~1^2~9
. (Тот же выпуск, что и изменение удаленного обновления, которое я упомянул в своем ответе, обновлено, чтобы добавить туда дополнительную версию выпуска). Может быть, просто поздно было вдаваться в примечания к выпуску?