</> Praktum

Главная / Git / git pull

Справочник Git

git pull: получаем изменения с сервера

git pull сначала загружает сведения с удалённого репозитория, затем интегрирует их в текущую ветку. По умолчанию это близко к git fetch и последующему merge.

Рабочий пример

git status
git pull --ff-only
# если нужно только посмотреть
git fetch origin
git log --oneline HEAD..origin/main

Флаг --ff-only обновляет ветку, только если локальная история не расходилась с удалённой. Это предотвращает неожиданный merge commit при обычном получении изменений.

Когда применять

Перед pull сохрани или убери незавершённые правки и проверь текущую ветку. В командной работе заранее договоритесь, используется merge или rebase.

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

Частые ошибки

  • Выполнять pull с незафиксированными конфликтующими правками
  • Не смотреть, какая ветка активна
  • Использовать force после неудачного обновления

Pull забирает чужие коммиты и встраивает их

git pull делает две вещи: скачивает историю и сливает её в текущую ветку. Если у тебя нет своих новых коммитов, операция выглядит как простое обновление. Если есть, получится то же слияние, и возможен конфликт.

Перед pull сохрани или закоммить работу. Обновление с грязной папкой либо остановится, либо смешает чужие файлы с недоделанными. git status должен быть чистым или ты должен понимать, какие правки готовы подождать в stash.

git status
git pull
git log --oneline -5

Когда pull ругается

  • Нет upstream — ветка ещё ни разу не связана с удалённой. Поможет явный git pull origin main или первичная отправка.
  • Истории разошлись — кто-то переписал уже отправленные коммиты. Не лечи это случайным набором команд.
  • Конфликт в файле — реши его как при обычном merge и заверши коммит.
  • Ты стоишь не в той ветке и тянешь чужую задачу в свою.
Запомни: Сначала pull, потом push. Так ты встраиваешь чужое до того, как отправишь своё.

Что именно приехало

После удачного pull посмотри последние сообщения в git log. Если изменилась вёрстка, открой страницу в браузере, а не только терминал. История может скачаться без ошибок и при этом принести правку, которую тебе ещё нужно учесть в своей задаче.

Задание

В тестовом репозитории выполни fetch, посмотри новые коммиты и только затем обнови ветку через pull --ff-only.

Проверка: результат должен работать с клавиатуры, не создавать ошибок в консоли и оставаться понятным без пояснений автора.

Ещё в разделе Git