надежная стратегия развертывания с capistrano и git - PullRequest
0 голосов
/ 10 марта 2011

Каков наилучший способ настроить надежную стратегию развертывания для приложения RoR, которая допускает следующий сценарий?

  1. новая функция зафиксирована
  2. новая функция развернута в промежуточной среде
  3. экстренное исправление / зафиксированное исправление
  4. экстренное исправление, развернутое на стадии (исключая предыдущую функцию)
  5. проверенное аварийное исправление на стадии
  6. экстренное исправление развернуто на производстве
  7. оригинальная новая функция, развернутая в стадии подготовки

Насколько я могу судить, мне нужно будет использовать либо ветви git, либо теги, либо и то и другое.Существуют ли какие-либо инструменты, которые могут сократить или автоматизировать затраты на поддержку этих веток или тегов?

1 Ответ

0 голосов
/ 10 марта 2011

Я не уверен, что есть. Для меня это больше вопрос процесса, чем технический вопрос.

Пометка и ветвление с использованием тематических (или функциональных) ветвей - это обычно путь. Я склонен держать две долгоживущие ветки, master и staging, и я использую тематические ветки для всей разработки. Долгоживущие ветви - единственные, которые используются для развертывания в их соответствующих средах, и аварийные исправления обрабатываются с помощью git revert , за которым следует cap deploy , за которым следует исправление в тематической ветви, затем слились в любую долгоживущую ветвь, в которой произошла чрезвычайная ситуация.

Надеюсь, это поможет.

...