Параметры для получения изменений
Эти команды особенно полезны при взаимодействии с удаленным репозиторием. Команды clone и fetch позволяют скачать удаленный код с удаленного URL-адреса репозитория на локальный компьютер, merge используется для слияния работы, проделанной вами и другими пользователями, а pull представляет собой комбинацию команд fetch и merge.
Клонирование репозитория
Чтобы получить полную копию репозитория другого пользователя, используйте команду git clone в следующем виде:
$ git clone https://HOSTNAME/USERNAME/REPOSITORY.git
# Clones a repository to your computer
При клонировании репозитория можно выбрать один из нескольких различных URL-адресов. При входе в GitHubэти URL-адреса доступны на главной странице репозитория при нажатии кнопки Code.

При выполнении команды git clone происходит следующее:
- Создается новая папка с именем
repo. - Она инициализируется как репозиторий Git.
- Создается удаленный узел с именем
origin, ведущий на URL-адрес, из которого вы клонировали репозиторий. - С этого адреса скачиваются все файлы и фиксации репозитория.
- Извлекается ветвь по умолчанию.
Для каждой ветви foo в удаленном репозитории создается соответствующая ветвь удаленного отслеживания refs/remotes/origin/foo в локальном репозитории. Обычно имена ветвей удаленного отслеживания можно сокращать до origin/foo.
Получение изменений из удаленного репозитория
Используйте команду git fetch для получения новых работ, выполненных другими людьми. Команда получения данных из репозитория захватывает все новые ветви и теги удаленного отслеживания, не сливая эти изменения с вашими собственными ветвями.
Если у вас уже есть локальный репозиторий с удаленным URL-адресом, настроенный для желаемого проекта, вы можете получать все новые сведения, выполняя в терминале команду git fetch *remotename*:
$ git fetch REMOTE-NAME
# Fetches updates made to a remote repository
Если нет, вы всегда можете добавить новый удаленный репозиторий, а затем получить из него данные. Дополнительные сведения см. в разделе Управление удаленными репозиториями.
Слияние изменений с локальной ветвью
Слияние объединяет локальные изменения с изменениями, внесенными другими людьми.
Обычно сливаются ветвь удаленного отслеживания (т. е. ветвь, полученная из удаленного репозитория) и локальная ветвь:
$ git merge REMOTE-NAME/BRANCH-NAME
# Merges updates made online with your local work
Вытягивание изменений из удаленного репозитория
git pull — это удобное сочетание клавиш для выполнения git fetch и git merge в одной команде:
$ git pull REMOTE-NAME BRANCH-NAME
# Grabs online updates and merges them with your local work
Поскольку pull приводит к слиянию полученных изменений, перед выполнением команды pull нужно зафиксировать локальную работу Если возникнет конфликт слияния, который вы не сможете разрешить, или вы решите выйти из слияния, используйте команду git merge --abort, чтобы вернуть ветвь туда, где она находилась до вытягивания.