Глиф Учебники

Как клонировать репозиторий

Справочник · Git · 2 минуты чтения

Терминал
$ git clone https://github.com/ivan/todo.git
Cloning into 'todo'...
$ cd todo

Адрес берут на странице проекта — обычно под кнопкой Code или Clone. Git создаёт папку с именем проекта (todo), скачивает в неё все файлы и всю историю и настраивает origin — связь с сервером. После этого можно сразу работать: git log, git pull, а при наличии прав — git push.

В свою папку

Второй параметр — имя папки:

Bash
git clone https://github.com/ivan/todo.git my-todo

Точка вместо имени клонирует в текущую папку — только если она пустая:

Bash
git clone https://github.com/ivan/todo.git .

HTTPS или SSH

Адрес можно поменять и после клонирования: git remote set-url origin новый-адрес.

Одна ветка или без истории

ЗадачаКоманда
Сразу оказаться на ветке devgit clone -b dev адрес
Только последнее состояние, без историиgit clone --depth 1 адрес
Только одна ветка, без остальныхgit clone --single-branch -b dev адрес

--depth 1 скачивает быстрее и занимает меньше места — удобно, если проект нужен только собрать или посмотреть. Историю такого клона можно докачать позже командой git fetch --unshallow.

Скачать без Git

На странице проекта обычно есть пункт «Download ZIP» — архив с файлами текущей версии. Это не репозиторий: истории и связи с сервером в нём нет, и git pull там не работает. Чтобы получать обновления, нужен git clone.

Частые ошибки

Чужой код после клонирования не запускайте вслепую: скрипты сборки и установки выполняются с вашими правами. Сначала посмотрите, что за проект и кто автор, особенно если ссылку прислали незнакомые люди.