Перейти к основному содержимому

Удалённый репозиторий

Пока что мы обсуждали использование Git только на локальной машине. Однако мы можем хранить историю коммитов удалённых репозиториев, которую можно отслеживать и обновлять.

Команда git remote

Управление набором отслеживаемых удаленных репозиториев.

Документация здесь.

git remote -v выводит список удалённых репозиториев, которые мы отслеживаем, и имена, которые мы им присвоили.

Команда git clone

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

Документация здесь.

При использовании команды git clone <url репозитория> мы не только загружаем себе копию репозитория, но и неявно отслеживаем удалённый сервер, который находится по указанному адресу и которому присваивается имя origin.

Наиболее употребляемые команды:

  • git remote add <имя> <url> — добавляет удалённый репозиторий с заданным именем;
  • git remote remove <имя> — удаляет удалённый репозиторий с заданным именем;
  • git remote rename <старое имя> <новое имя> — переименовывает удалённый репозиторий;
  • git remote set-url <имя> <url> — присваивает репозиторию с именем новый адрес;
  • git remote show <имя> — показывает информацию о репозитории.
Команда git fetch

Загрузка объектов и ссылок из другого репозитория.

Документация здесь.

Команда git pull

Извлечение и интеграция с другим репозиторием или локальной веткой.

Документация здесь.

Команда git push

Обновление удаленных ссылок вместе со связанными объектами.

Документация здесь.

Следующие команды работают с удалёнными ветками:

  • git fetch <имя> <ветка> — получает данные из ветки заданного репозитория, но не сливает изменения;
  • git pull <имя> <ветка> — сливает данные из ветки заданного репозитория;
  • git push <имя> <ветка> — отправляет изменения в ветку заданного репозитория. Если локальная ветка уже отслеживает удалённую, то можно использовать просто git push или git pull.

Иллюстрация git push и git pull (источник: tproger.ru):

git push и git pull

Таким образом несколько людей могут запрашивать изменения с сервера, делать изменения в локальных копиях и затем отправлять их на удалённый сервер, что позволяет взаимодействовать друг с другом в пределах одного репозитория.

Работа с удаленным репозиторием предстоит в лабораторной работе.

Атрибуция

При подготовке статьи использован материал: