Использование git fetch --dry-run
На предыдущем этапе мы использовали git ls-remote
для просмотра доступных ссылок в удалённом репозитории. Теперь давайте рассмотрим, как использовать git fetch --dry-run
.
Команда git fetch
используется для загрузки коммитов, файлов и ссылок из удалённого репозитория в локальный. Однако она не автоматически объединяет или изменяет текущие рабочие файлы. Это как получение обновлений из другого временного аппарата, но без их применения.
Добавление опции --dry-run
к команде git fetch
делает процесс ещё безопаснее. Она сообщает Git показать, что произошло бы, если бы вы выполнили git fetch
, но без фактической загрузки данных или внесения каких-либо изменений. Это как попросить ваш временной аппарат смоделировать поездку, прежде чем вы отправитесь в неё.
Для использования git fetch --dry-run
обычно требуется локальный репозиторий Git, настроенный для отслеживания удалённого. Поскольку у нас пока нет репозитория, настроенного для работы с удалённым, мы не можем напрямую использовать git fetch --dry-run
в обычном режиме.
Однако мы всё ещё можем продемонстрировать концепцию, попробовав напрямую получить данные из удалённого URL, хотя это менее распространено в типичных рабочих процессах. Попробуем снова получить данные из URL репозитория Git с флагом --dry-run
.
Перейдите в каталог проекта, если вы ещё не там:
cd ~/project
Теперь выполните следующую команду:
git fetch --dry-run https://github.com/git/git.git
Вы должны увидеть вывод, похожий на следующий:
From https://github.com/git/git.git
* [new branch] master -> origin/master
... (возможно, много других строк, показывающих, что было бы получено) ...
Этот вывод показывает, какие ветки и теги были бы получены из удалённого репозитория. Строки, начинающиеся с * [new branch]
, указывают на ветки, которые существуют на удалённом репозитории, но отсутствуют локально, и куда они были бы сохранены локально (например, origin/master
).
Опция --dry-run
очень полезна для предварительного просмотра изменений, которые вы получите из удалённого репозитория, прежде чем фактически получить их. Это помогает понять, какие обновления доступны, и избежать непредвиденных изменений в локальном репозитории.
В реальной ситуации вы обычно настроите удалённый репозиторий (часто называемый origin
) и выполните git fetch --dry-run origin
в клонированном репозитории. Это покажет вам изменения, доступные из этого конкретного удалённого репозитория.