Вы можете добавить несколько URL на один пульт.Что вам нужно сделать, это на локальном компьютере сначала создать пульт, соответствующий серверу gitorious:
git remote add -m master remotename ssh://gitorious-server/path
Вам нужно будет повторно добавить URL сервера gitorious в качестве явного push-запроса.URL:
git remote set-url --add --push remotename ssh://gitorious-server/path
и затем сделайте то же самое для облачного сервера:
git remote set-url --add --push remotename ssh://cloud-server/path
Это должно настроить конфигурацию, при которой каждый раз при локальном выполнении git push
ваши изменения будуттолкнул на оба сервера.Но когда вы запускаете git pull
(или git fetch
), он будет извлекаться только с сервера.Это должно быть все, что нужно, чтобы серверы оставались синхронизированными.
Если вы когда-либо отправляете на любой сервер только с этого конкретного локального компьютера, то это все, что вам нужно.Но если вы перешли на один или другой сервер с любого другого компьютера, вам нужно будет выполнить одинаковую настройку на каждом из этих компьютеров.Если компьютеров достаточно, чтобы это было громоздким, или если у других людей есть доступ на запись к двум репозиториям, и вы не совсем доверяете им, чтобы получить правильную конфигурацию, вам, вероятно, лучше сделать что-то на стороне сервера.Это будет метод перехвата после получения, который manojlds упомянул .Для ясности, если вы используете метод пост-получения, не используйте дистанционный метод с двумя URL-адресами, описанный в предыдущей части моего поста.