Mercurial (репликация)

IDE, VCS и прочее

Модератор: Модераторы разделов

Ответить
kosteel
Сообщения: 330
Статус: Root Lamer
ОС: Debian GNU/Linux 5.02 amd64

Mercurial

Сообщение kosteel »

Доброго всем, начинаю изучать mercurial и появился такой вопрос: как в нем осуществить автоматическую репликацию? То есть допустим есть два удаленных офиса: главный офис и филиал. В главном офисе находится репозиторий Hg, а в филиале его клон - нужно чтобы они время от времени автоматически синхронизировались (push/pull из филиала в главный офис).

К сожалению по репликации нагуглить ничего не смог, кроме подсказки что в Mercurial операции clone, push и pull - собственно и есть репликация только как бы это автоматизировать?

1. Скрипт по крону периодически выполняющий push/pull или обмен bandle-ми или текстовыми патчами
2. Штатные средства или расширения. (Какие?).
3. Другие варианты?

Так же прошу вас разъяснить вот какой момент: репликацию можно проводить обмениваясь дампами (на сколько я понимаю bndle это и есть дамп) или транзакционно, то есть changeset-ами. Или я все не так понял и как раз bandle и есть набор изменений (changeset)?

Ничто не вечно под рутом
Спасибо сказали:
Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current
Контактная информация:

Re: Mercurial

Сообщение drBatty »

kosteel писал(а):
28.05.2010 15:10
Или я все не так понял и как раз bandle и есть набор изменений (changeset)?

bandle это набор изменений от --base до tip(или до чего-то другого). Ну я так понял... push это сокращение от
1) создание бандла
2) отправки его на сервер
3) внесение изменений из полученного бандла.

Поправьте меня если я не прав...

PS: неплохо для "вопроса новичка"...


kosteel писал(а):
28.05.2010 15:10
1. Скрипт по крону периодически выполняющий push/pull

ИМХО так.
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:
kosteel
Сообщения: 330
Статус: Root Lamer
ОС: Debian GNU/Linux 5.02 amd64

Re: Mercurial

Сообщение kosteel »

ИМХО так.

тогда получается скрипт должен быть довольно гибким и подразумевать в себе не только операции push/pull, но также diff, resolve и возможно merge.
К томуже у меня перед глазами сравнительная таблица по системам контроля версий, там обозначена функция "Удаленная репликация репозиториев" в столбце mercurial обозначено "да, поддерживает", то есть должны быть именно штатные средства или некое расширение, как например у subversion есть SVN:Mirror или SVN-Pusher.
Ничто не вечно под рутом
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU
Контактная информация:

Re: Mercurial

Сообщение sash-kan »

вообще-то логичнее всего такие вещи hook-ами делать. надеюсь, в mercurial они имеются.
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
Аватара пользователя
t.t
Бывший модератор
Сообщения: 7390
Статус: думающий о вечном
ОС: Debian, LMDE

Re: Mercurial

Сообщение t.t »

sash-kan писал(а):
28.05.2010 19:57
вообще-то логичнее всего такие вещи hook-ами делать. надеюсь, в mercurial они имеются.
Конечно, имеются:
http://mercurial.selenic.com/wiki/Hook
¡иɯʎdʞ ин ʞɐʞ 'ɐнɔɐdʞǝdu qнεиж
Спасибо сказали:
Ответить