Команди Git

git pull

git pull: забрати зміни з віддаленого репозиторію.

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

Коли ти працюєш над проєктом з іншими розробниками або навіть просто з різних пристроїв, репозиторій з кодом може оновлюватися без твоєї участі. Команда git pull дає змогу синхронізувати локальну копію репозиторію з останніми чужими змінами. Для командних проєктів ця команда незамінна: вона гарантує, що зміни кожного враховано, а конфлікти злиття розв'язано вчасно.

Перед злиттям чи ребейзом git pull оновлює твої віддалено-відстежувані гілки (наприклад, origin/main), тож завжди можна побачити, що змінилося на віддаленому боці, ще до оновлення локальної гілки.

Ребейз замість злиття

Коли ти запускаєш git pull, Git виконує злиття, щоб інтегрувати зміни з віддаленого репозиторію у твою локальну гілку. Але до git pull можна додати опцію --rebase, щоб замість злиття перебазувати локальні зміни поверх стягнутих. Так історія комітів буде чистішою, без зайвих комітів злиття.

Можна зробити ребейз типовою поведінкою 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