Я пытаюсь понять мышление CI, и на этих выходных играл с Phing. Все это кажется достаточно простым для использования, и уже есть много примеров.
Однако меня все еще озадачивает, как люди на самом деле его используют. То есть я не ищу, какие тесты вы выполняете, а вместо этого ищу предлагаемый рабочий процесс с использованием Phing, на каком этапе вы его активируете, на каком этапе цикла разработки оно выполняется.
Например, у нас есть несколько веб-сайтов, в настоящее время мы редактируем исходный код локально и при сохранении загрузки на действующий сайт (я знаю, насколько это плохо ...), мы проводим быстрое тестирование и убеждаемся, что код работает так, как планировалось. . Если это так, мы берем на себя обязательства по репо и продолжаем. Если нет, мы можем откатиться или отредактировать отмену и повторное сохранение. Хотя сейчас это кажется безумным, простота сработала для нас хорошо.
Теперь у нас небольшая команда, поэтому я пытаюсь включить Phing в этот процесс, чтобы получить все дополнительные преимущества линтинга / сниффинга / обнаружения беспорядка и т. Д. однако я не могу понять наилучший порядок событий.
Не могли бы вы предложить:
Сказанное выше кажется мне немного запутанным. Это потому, что похоже, что я пытаюсь объединить тестовое развертывание с живым развертыванием, что сбивает меня с толку?
Также может показаться, что фиксация выполняется немного назад, затем запускается Phing, затем приходится редактировать и, возможно, повторно фиксировать перед пытаюсь снова.
Следовательно, было бы разумнее:
Проблема в том, что, допустим, я просто хотел исправить написание слова, жестко закодированного на HTML-странице, кажется излишним?
Наконец, как люди настраивают свои серверы, у вас есть один сервер для действующего сайта, один для промежуточного и один для размещения Phing (и любого программного обеспечения CI)?