Ох уж эти трудности перевода)) remote обычно переводят на русский как удалённый. Но что если я захочу удалить remote? Удалить удалённый?
Поэтому лучше говорить «внешний», чтобы не путаться. Мы работаем с локальным репозиторием, а все остальные по отношению к нему будут внешними. В Git нет централизации, все репозитории равноправны и могут обмениваться информацией в произвольных направлениях.
Итак: у нас есть два внешних репозитория и хочется их синхронизировать? Без проблем.
Можно использовать локальный компьютер как вспомогательный.
Я сделал
git init
git remote add origin ....
Начало уже нелогичное. Ты же говоришь что уже выкачал репозиторий с сервера?
Т. е. выполнил
git clone <server1>
Это уже создало копию репозитория и init не нужен. А ещё это автоматически создало ссылку origin тоже.
Дальше можно поменять адрес origin на второй сервер
git remote set-url origin <server2>
И сразу увидим в git status есть ли отличия.
Хотя нет, вру. Надо после смены адреса скачать к себе заново внешние ветки командой
git fetch
Только тогда будет что сравнивать.
Примерно так. Это первое что пришло в голову и пожалуй грубовато. Можно придумать более аккуратную схему.
Я бы лучше не удалял старый remote, а добавил новый. То что ты «скачал с сервера» пусть так и останется как origin. А «удалённый» репозиторий обозначим как upstream
git remote add upstream <server2>
git fetch upstream
Тогда мы сможем сравнивать любые ветки и синхронизировать.