Развертывание Capistrano без команды git на общем хосте? - PullRequest
0 голосов
/ 16 марта 2011
  • Разработчик A - Локальный репозиторий -> pulls / push ---> github
  • Разработчик B - Локальный репозиторий -> pulls / push ---> github
  • Capistrano останется на машинах наших разработчиков, однако мы определим: хранилище, чтобы указать на наш проект GitHub: set: repository, "git@github.com: myuser / myproject.git" # URL моего клона
  • РазработчикИЛИ Разработчик B должен иметь возможность развертывать зафиксированные файлы на производственном компьютере.

Я не уверен насчет третьего пункта, возможно ли это?

Я былctcherry сообщает здесь В этом рабочем процессе, нужно ли устанавливать на рабочем сервере команду git? , что:

1) По умолчанию Capistrano будет развертываться из репозитория, поэтомуРазвертывание файлов будет происходить из кода, который зарегистрирован в github.Вы можете настроить Capistrano для развертывания его с локального компьютера разработчика, используя другую «стратегию развертывания». См. Здесь: http://rubydoc.info/gems/capistrano/2.5.19/Capistrano/Deploy/Strategy/Copy

Но у меня все еще есть сомнения.

Если мыПри использовании этого подхода, какой рабочий процесс будет точный ?

  • С компьютера разработчика A - Мы получаем фиксированные файлы из github с помощью Capistrano.
  • С того же самого компьютера разработчика A - Мы развертываем эти файлы на общем хосте через SSH, и файлы будут помещены в их правильные места?

Это так?

Обновление: Пожалуйста, я никогда не использовал ни Git, ни Capistrano Deploy, однако я делаю все возможное, чтобы понять, как все это может работать, чтобы обеспечить хороший процесс разработки рабочих процессов для моих приложений на основе ZF.

Так что мои вопросы действительно простые.

Если я должен предоставить какую-либо дополнительную информацию, пожалуйста, дайте мне знать.

Большое спасибо.

1 Ответ

2 голосов
/ 16 марта 2011

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

Обратите внимание, что этот подход значительно медленнее, чем при "нормальном" развертывании, особенно если у вас медленное интернет-соединение, поскольку каждый раз копируется весь проект.

...