Назад | Перейти на главную страницу

Плюсы / минусы развертывания рабочей копии проекта Subversion Ruby on Rails

Несколько проектов Rails, над которыми я работаю, ценят частые инкрементные обновления, что, на мой взгляд, здорово. Наша текущая стратегия развертывания - ручная, но мы рассматриваем возможность перехода на автоматизированный инструмент, такой как Capistrano; однако мне также пришло в голову, что, может быть, даже лучше вместо этого просто развернуть рабочую копию Subversion.

Вот преимущества, которые я сразу вижу:

  1. Не нужно экспортировать / zip / копировать / ssh / unzip для развертывания кода (просто svn update).
  2. Легко откатиться к любой версии (например, svn update -r 123).
  3. Легко определить текущую развернутую версию (svn info / svn diff).

Конечно, эта стратегия не подходит для крупных организаций, в которых есть средства контроля и разделения среды, но, помимо этого, каковы некоторые недостатки этой стратегии по сравнению с формальным инструментом автоматического развертывания?

Что происходит, когда кто-то фиксирует быстрое некорректное изменение или совершает фиксацию с оставшейся отладкой?

Вам лучше пометить коммиты как «производственные» или что-то подобное, если вы хотите, чтобы коммит был развернут. Затем создайте сценарий развертывания, который периодически проверяет наличие новой производственной версии, удаляет все файлы / параметры отладки и помещает файлы в нужное место.