Menu
Coddy logo textTech

Git Pull

Последнее обновление

git pull обновляет вашу текущую ветку последними коммитами из её удалённого репозитория. Под капотом он выполняет git fetch, чтобы загрузить изменения, а затем git merge, чтобы их интегрировать, так что git pull = git fetch + git merge. Добавьте --rebase, чтобы вместо создания коммита слияния переприменить ваши локальные коммиты поверх.

Попробуйте это в терминальном playground: настоящая оболочка в вашем браузере, ничего устанавливать не нужно.

git pull скачивает новые коммиты с удалённого репозитория и сливает их в текущую ветку - fetch + merge за один шаг.

Синтаксис

CommandWhat it does
git pullПолучает и сливает удалённую версию текущей ветки
git pull origin mainПолучает конкретную ветку из удалённого репозитория
git pull --rebaseПолучает, а затем перебазирует ваши коммиты поверх
git pull --ff-onlyПолучает только при возможности fast-forward (без слияния)
git pull --no-rebaseПринудительно выполняет слияние, даже если rebase установлен по умолчанию

Частые случаи

GoalCommand
Получить последнее на вашей веткеgit pull
Сохранить историю линейнойgit pull --rebase
Прервать pull, столкнувшийся с конфликтамиgit merge --abort
Отбросить локальные коммиты и совпасть с удалённымgit fetch затем git reset --hard origin/main

Вопросы и ответы по git pull

Что на самом деле делает git pull?
Он загружает последние коммиты из удалённого репозитория для вашей текущей ветки и интегрирует их в вашу локальную ветку. Это сокращение для двух команд: git fetch (загрузка), за которой следует git merge (интеграция). Если вы настроите это, шаг слияния заменится на rebase.
В чём разница между git pull и git fetch?
git fetch только загружает удалённые изменения и обновляет ваши ветки отслеживания удалённого репозитория, не затрагивая вашу рабочую ветку. git pull выполняет этот fetch, а затем сливает изменения в вашу текущую ветку. Используйте fetch, чтобы сначала просмотреть входящие изменения; используйте pull, чтобы получить и интегрировать их за один шаг.
Что такое git pull --rebase и когда его использовать?
git pull --rebase получает удалённые коммиты, а затем переприменяет ваши локальные коммиты поверх них вместо создания коммита слияния. Он сохраняет историю линейной, что предпочитают многие команды. Используйте его, когда у вас есть локальные коммиты, которые ещё не отправлены, и вы хотите избежать коммита слияния при каждом pull.
Как исправить конфликты после git pull?
Pull может вызвать конфликты слияния, когда локальные и удалённые изменения пересекаются. Откройте конфликтующие файлы, разрешите отмеченные участки, затем выполните для них git add и git commit (для слияния) или git rebase --continue (для pull с rebase). Если вы предпочитаете отменить, выполните git merge --abort или git rebase --abort.
Могу ли я потренироваться в этом онлайн?
Да. Откройте терминальный playground, чтобы выполнить git pull в настоящей оболочке в вашем браузере, ничего устанавливать не нужно. Бесплатный интерактивный курс Git от Coddy также пошагово охватывает работу с удалёнными репозиториями.
Coddy programming languages illustration

Изучайте Git с Coddy

НАЧАТЬ