Команды Git

git pull

git pull: забрать изменения из удалённого репозитория.

Команда git pull получает изменения из удалённого репозитория и сразу обновляет локальный репозиторий. Простыми словами, git pull — это комбинация двух команд: git fetch и git merge (или git rebase, в зависимости от настроек).

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

Перед слиянием или ребейзом git pull обновляет удалённо-отслеживаемые ветки (например, origin/main). Так всегда можно посмотреть, что изменилось на сервере, прежде чем обновится локальная ветка.

Ребейз вместо слияния

При запуске git pull Git выполняет слияние, чтобы добавить изменения из удалённого репозитория в локальную ветку. Но если передать флаг --rebase, Git перенесёт локальные правки ребейзом поверх полученных изменений вместо слияния. Это сохраняет историю коммитов чистой и избавляет от лишних коммитов слияния.

Можно включить ребейз по умолчанию для git pull, установив настройку pull.rebase в true:

git config --global pull.rebase true

Примеры

Подтянуть последние изменения из удалённого репозитория в текущую ветку:

git pull

Подтянуть обновления из main, находясь в другой ветке:

git pull origin main

Подтянуть изменения и перенести текущую ветку ребейзом поверх полученной:

git pull --rebase

Включить ребейз по умолчанию для git pull:

git config pull.rebase true