2010-11-20 6 views
1

Я застрял в ситуации из последних нескольких дней, и после изучения не очень хороших вариантов я подумал, что снова вернусь к stackoverflow.com.Менеджер Subversion с возможностями зеркалирования

Вот мой вопрос: мы перекладываем все наши репозитории по локальной сети из Интернета, чтобы наши разработчики могли наслаждаться большей скоростью и совершать/проверять быстро. В то время как переход был выполнен, мы поняли, что этот шаг замедлил развертывание, так как наша процедура развертывания включает проверку кода с сервера репо - и теперь, когда сервер репо находится в нашей локальной сети, его связь очень медленна из Интернета. Поэтому я хотел знать, возможно ли, что у нас могут быть 2 сервера репо, один по локальной сети и другие на нашем веб-сервере и синхронизировать их без особых проблем?

ответ

0

Не совсем ответ, но: распределенные SCM, такие как mercurial или git, могут делать это легко и естественно. Они также выполняют намного лучше в любом отношении.

1

в UNIX вы можете обмануть, но вы не упомянули о платформе. Возможно, вы можете принять следующую идею:

  • Сделайте проверку на стороне LAN (быстрый)
  • толчок к развертыванию с помощью Rsync (быстро, как только дельта-изменения выталкиваются)

С мерзавцем , darcs, mercurial или bzr, это тривиально, так как распределенная часть сохраняет день.

Цель состоит в том, чтобы минимизировать накладные расходы в передаваемых байтах или иметь зеркало, которое в конечном итоге будет соответствовать последнему времени проверки (т. Е. Вы перемещаете все байты, вы просто ждете его). Я бы воздержался от последнего, поскольку быстрое развертывание является самоцелью (вы хотите быстро вытащить исправление).