- Опубликовано: 5 дек 2024
- 532
Комманда git fetch. Пробуем разобраться что она делает
Что происходит при выполнении git fetch?
Git — это мощный инструмент для управления версиями кода. Команда git fetch является одной из основ работы с удалёнными репозиториями. В этой статье мы подробно разберём, как работает git fetch, где хранятся изменения и что нужно знать для эффективного использования этой команды.
Что делает команда git fetch?
git fetch позволяет получить все изменения из удалённого репозитория, обновляя удалённые ссылки (remote-tracking branches), такие как origin/main. При этом локальные ветки остаются неизменными. Это даёт возможность проанализировать обновления перед их объединением в вашу работу.
Где сохраняются изменения?
После выполнения git fetch изменения из удалённого репозитория не попадают напрямую в ваши локальные ветки. Вместо этого они сохраняются в удалённых ссылках, которые представляют собой состояние удалённых веток в вашем локальном репозитории.
- Удалённые ссылки — это не полноценные ветки, а указатели на состояние веток в удалённом репозитории.
- Пример:
origin/main— это удалённая ссылка на веткуmainиз репозиторияorigin.
Эти ссылки хранятся в директории .git/refs/remotes/, а локальные ветки — в .git/refs/heads/.
Как проверить изменения?
После выполнения git fetch вы можете увидеть, что было обновлено:
-
Список удалённых веток:
git branch -rПример вывода:
origin/main origin/feature/new-feature -
Сравнение локальной и удалённой ветки:
git diff main origin/mainЭта команда покажет изменения, которые появились в удалённой ветке
main, но ещё не находятся в вашей локальной ветке. -
Логи удалённой ветки:
git log origin/mainВы можете увидеть коммиты, которые были добавлены в удалённую ветку.
Как использовать изменения?
После выполнения git fetch вы можете решить, как применять изменения из удалённой ветки:
-
Объединить с текущей веткой:
git merge origin/main -
Перебазироваться на новую версию:
git rebase origin/main -
Создать новую локальную ветку на основе удалённой:
git checkout -b new-branch origin/main
Различия между локальной веткой и удалённой ссылкой

Когда использовать git fetch?
Используйте git fetch, когда:
- Вы хотите увидеть изменения в удалённом репозитории без немедленного объединения.
- Вы работаете над критическим проектом и хотите проверить обновления перед их применением.
- Вы планируете использовать
git rebaseилиgit merge.
Вывод
git fetch — это безопасный способ синхронизации с удалённым репозиторием, который даёт вам полный контроль над тем, как и когда применять изменения. Теперь вы знаете, как работает эта команда, где хранятся обновления и как с ними работать.
Используйте git fetch, чтобы оставаться в курсе изменений и поддерживать вашу работу в актуальном состоянии!
Была статья полезной: