Как синхронизировать 2 пульта с помощью Phabricator Diffusion

Я должен использовать 2 пульта для своих репозиториев. Например.

  • Один из них — мой локальный сервер git (gitblit).
  • Один из них — Github/bitbucket.

Кроме того, я должен использовать Phabricator, чтобы управлять всем этим. Итак, рабочий процесс, который я думаю, таков:

Я отправляю изменения на свой локальный сервер git, а мои друзья — на github. Phabricator Наблюдайте за изменениями с локального сервера git + Github и синхронизируйте их с другими удаленными изменениями. Я попробовал вариант «Зеркало», но он удалил изменения с одного из удаленных, потому что это то, что должно делать зеркало.

Поэтому мне нужно знать способ, который я могу использовать для синхронизации этих двух пультов с помощью Phabricator.


person Nivesh Saharan    schedule 28.06.2016    source источник


Ответы (1)


Помимо создания зеркала (как вы обнаружили, только для чтения), Phabricator на самом деле не имеет возможности отправлять данные на другие серверы. Он предполагает один из следующих рабочих процессов:

  1. Фабрикатор — это основная копия репозитория — все отправляются в Фабрикатор (в этом сценарии Фабрикатор может отправлять на зеркала).

  2. Какой-то другой сервер является основной копией репозитория — Phabricator будет контролировать удаленный мастер и локально хранить копию репозитория только для чтения.

Возможно, можно реализовать задачу слияния репозиториев в Harbormaster, но вы должны быть готовы к частому ручному вмешательству в любой рабочий процесс, когда пользователи отправляют данные в разные репозитории и ожидают, что автоматизация синхронизирует их вместе. Вероятно, эта задача синхронизации была бы проще, если бы вы избавились от сервера gitblit из уравнения и просто использовали Phabricator локально.

person JSON    schedule 06.09.2016