Push для нескольких удаленных репозиториев из одного локального репо в Mercurial
Я рассматривал возможность использования AppHarbor для размещения легковесного веб-сайта и изучал их интеграцию в Mercurial.
В настоящее время я использую Kiln для своих удаленных репозиториев, но в настоящее время AppHarbor поддерживает только интеграцию BitBucket.
Можно ли иметь 2 удаленных хранилища для одного локального хранилища? Так, когда я нажимаю коммиты из моего локального региона, они оба получают толчок?
Я никогда не хочу извлекать данные из BitBucket, а только нажимаю, чтобы AppHarbor мог их захватить и развернуть.
2 ответа
Вы можете установить несколько псевдонимов удаленного репозитория в [paths]
раздел файла конфигурации репозитория. Этот файл находится в.hg/hgrc, и вы должны добавить пути, как это
[paths]
default = http://kilnhg.com/repo
bitbucket = http://bitbucket.org/repo
Тогда вы бы побежали hg push bitbucket
подтолкнуть к битбакету и hg push
нажать на печь, что также является значением по умолчанию здесь. Псевдоним default
это тот, который используется, когда вы ничего не указываете. Таким образом, push и pull без аргументов будут использовать ваш предпочтительный удаленный хост, kiln.
К сожалению, вы не можете сделать hg push *
введите команду для одновременной отправки на все удаленные хосты, вы должны указать каждую точку назначения по одному.
Я не уверен, что вы можете редактировать файл hgrc в Bitbucket/Kiln. Если вы можете, вы можете сделать это автоматически. Если нет, вы можете нажать на другую локальную копию, которая затем вытолкнет и Bitbucket, и Kiln, используя Hooks. Смотрите этот ответ Тон (включен для удобства ниже):
На вашем центральном сервере вы создаете хук группы изменений.
Таким образом, ваш центральный сервер будет иметь следующий hgrc:
[paths] server2=http://server2 server3=http://server3 [hooks] changegroup.server2 = hg push -f server2 changegroup.server3 = hg push -f server3
Вы можете иметь несколько хуков для одного и того же события, так что это не должно быть проблемой. Преимущество перехватчика группы изменений над перехватом набора изменений заключается в том, что он запускается гораздо реже.