Как синхронизировать 2 пульта с помощью Phabricator Diffusion
Я должен использовать 2 пульта для своих репозиториев. Например,
- Одним из них является мой локальный сервер git (gitblit)
- Одним из них является Github / Bitbucket
Кроме того, я должен использовать Phabricator для управления всем этим. Итак, рабочий процесс, о котором я думаю:
Я отправляю изменения на мой локальный сервер git, а мои друзья нажимают на github. Phabricator Наблюдайте за изменениями с локального сервера git + Github и синхронизируйте его с другими удаленными изменениями. Я попробовал параметр Зеркало, но он удалил изменения с одного из удаленных, потому что это то, что зеркало должно делать.
Поэтому мне нужно знать способ, которым я могу использовать для синхронизации этих двух пультов с помощью Phabricator.
1 ответ
Помимо создания зеркала (только для чтения, как вы обнаружили), Phabricator на самом деле не имеет никакой возможности передавать на другие серверы. Предполагается один из следующих рабочих процессов:
Phabricator является главной копией хранилища - каждый подталкивает к Phabricator (в этом сценарии Phabricator может использовать зеркала).
Какой-то другой сервер является главной копией репозитория - Phabricator будет контролировать удаленный мастер и хранить локальную копию хранилища только для чтения.
Возможно, можно реализовать задачу слияния репозитория в Harbormaster, но вам придется быть готовым к частому ручному вмешательству в любой рабочий процесс, когда пользователи переходят в разные репозитории и ожидают, что автоматизация синхронизирует их вместе. Возможно, эта задача синхронизации была бы проще, если бы вы избавились от сервера gitblit из уравнения и просто использовали Phabricator локально.