git remote: связь с удалённым репозиторием
Обновлено 31 июля 2026 г.
git remote управляет списком адресов, по которым репозиторий обменивается коммитами с сервером. Удалённый репозиторий (remote) - это такой же репозиторий git, только на другой машине: GitHub, GitLab, сервер компании или папка на соседнем компьютере.
Локально связь записана парой «имя и адрес». Все команды обмена работают с именем, а не с длинным URL, поэтому адрес набирается один раз в жизни проекта.
$ git remote -v
origin git@github.com:username/my-project.git (fetch)
origin git@github.com:username/my-project.git (push)Две строки - адрес для чтения и адрес для записи, обычно они совпадают. Пустой вывод значит, что репозиторий пока ни с чем не связан. Связывает его add:
$ git remote add origin git@github.com:username/my-project.gitПосле git clone этого делать не нужно: клон прописывает origin сам.
origin - это просто имя
origin - имя по умолчанию для основного удалённого репозитория, и ничего особенного внутри него нет. Git подставляет это имя, когда ты пишешь git push без аргументов. Переименуй origin - и всё продолжит работать, только имя придётся называть явно.
$ git remote rename origin github
$ git remote remove github # убрать связь, история остаётся на дискеСменить адрес удалением и повторным добавлением можно, но правильнее set-url. Он нужен, когда репозиторий переехал или ты переходишь с HTTPS на SSH:
$ git remote set-url origin git@github.com:username/my-project.gitПодробную картину по одной связи даёт git remote show: оба адреса, ветку по умолчанию на сервере и то, какая локальная ветка куда отправляется.
$ git remote show origin
* remote origin
Fetch URL: git@github.com:username/my-project.git
Push URL: git@github.com:username/my-project.git
HEAD branch: main
Remote branch:
main trackedЧастые ошибки
git remote add не проверяет адрес. Команда пройдёт молча с любой опечаткой, а ошибка вылезет только на первом обмене, где-нибудь в виде Repository not found. Начинай разбор с git remote -v.
Вторая ошибка - добавлять origin поверх существующего. Git отвечает error: remote origin already exists. Тут нужен set-url, а не add.
Где это в учебнике
Глава 6. GitHub: облако и совместная работа. Что делать с готовой связью дальше, разобрано в статьях git push и git pull.
Потренироваться руками - в Песочнице: настоящий терминал с git и проверка шагов.