Что делает команда git clone?

«Что делает команда git clone?» — вопрос из категории Git, который задают на 23% собеседований Devops Инженер. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Команда git clone создает полную локальную копию удаленного репозитория, включая всю историю коммитов, ветки, теги и конфигурацию.

Что происходит при выполнении git clone <url>:

  1. Создается новая директория (имя берется из названия репозитория).
  2. Внутри нее инициализируется пустой репозиторий (git init).
  3. Добавляется удаленный репозиторий с псевдонимом origin, указывающий на переданный URL.
  4. Выполняется git fetch origin для загрузки всех объектов (коммитов, файлов, тегов) из удаленного репозитория.
  5. Выполняется git checkout для создания локальной ветки (обычно main или master), которая начинает отслеживать соответствующую удаленную ветку origin/main.

Базовый синтаксис:

git clone https://github.com/user/repository.git

Полезные опции:

  • Клонирование в конкретную папку: git clone <url> my-project
  • Клонирование только одной ветки (shallow clone): Экономит время и место.
    git clone --branch main --depth 1 https://github.com/user/repo.git
  • Использование SSH: git clone git@github.com:user/repository.git

После клонирования вы получаете готовую к работе копию проекта. Удаленная ветка origin/main автоматически настроена как upstream для вашей локальной main. Это позволяет выполнять git pull для получения обновлений и git push для отправки своих изменений.