Как синхронизировать два git-репозитория?

Я запускаю свой собственный частный git-репозиторий на частном сервере в помещении colo. Я использую его для любых частных проектов, которые я не могу открыть. Я использую github для всей своей работы с открытым исходным кодом.

Я веду разработку на настольной машине ubuntu и на моем MacBookPro. Когда я вношу изменения в свои системы разработки, я отправляю изменения в origin в colo, а затем перетаскиваю их в другую систему. Я довольно хорошо слежу за обновлением всех трех систем, в основном для целей резервного копирования и аварийного восстановления.

Теперь, когда BitBucket предлагает частный git-хостинг бесплатно, я подумываю о том, чтобы добавить туда клон своих проектов. Кроме того, тогда я смогу использовать дополнительные возможности, предоставляемые BitBucket, которые мой пустой частный git-сервер не предоставляет. Тем не менее, я хотел бы продолжать держать копию частного репозитория на моем сервере colo также для резервного копирования.

Поэтому у меня есть несколько вопросов:

  1. Не меняя стандартный процесс разработки (edit, add, commit, push), как я могу автоматически синхронизировать коммиты, опубликованные на моем сервере, с проектом bitbucket? Каждый раз, когда я делаю push на свой git-сервер, я бы хотел, чтобы эти коммиты автоматически переносились в мой проект bitbucket. Я не хочу менять свой рабочий процесс и хотел бы, чтобы мои клиенты-разработчики вносили как можно меньше изменений.

  2. Если я хочу использовать bitbucket в качестве основного git-репозитория, как мне перенести мои проекты с моего частного git-сервера на bitbucket?

  3. После миграции на bitbucket мне все равно нужна еще одна резервная копия на моем сервере. Как я могу сделать так, чтобы коммиты в bitbucket автоматически перебрасывались на мой git-сервер? По сути, это обратная сторона вопроса 1.

9
задан Tauren 5 October 2011 в 09:10
поделиться