Как вы обновляете свое веб-приложение на сервере?

Я знаю о Capistrano, но он слишком тяжел для меня. Лично я установил два репозитория Mercurial, один на производственном сервере, а другой на моей локальной машине разработчика. Обычно, когда новая функция готова, я помещаю изменения из репозитория на локальном компьютере в репозиторий на сервере, а затем обновляю на сервере. Это довольно простой и быстрый способ синхронизации файлов на нескольких компьютерах, но не помогает обновить базу данных.

Каково ваше решение проблемы?

5 ответов

Или Fabric, если вы предпочитаете Python.

Что такое тяжеловес в Капистрано? если вы хотите синхронизировать файлы, тогда rsync отлично подходит. но если вам нужно будет обновлять базу данных, может, кепка не так уж и плоха?

Раньше я использовал git push для публикации на своем веб-сервере, но в последнее время я просто использую rsync. Я стараюсь сделать свой сайт независимым от того, где он работает, насколько это возможно (с использованием относительных путей и т. Д.), И пока он работает довольно хорошо. Единственная проблема заключается в синхронизации баз данных, и для этого я обычно использую производственную базу данных в качестве главной и регулярно выполняю резервное копирование и импорт в свою тестовую базу данных.

Я предполагаю, что вы говорите о Ruby on Rails.

Проверьте HowTo вики:

http://wiki.rubyonrails.com/rails/pages/Howtos

@Эндрю

Чтобы использовать git push для развертывания вашего сайта, вам нужно сначала настроить удаленный сервер в вашем файле.git/config, на который нужно нажать push. Затем вам нужно настроить хук, который в основном будет выполнять git reset --hard, чтобы скопировать код, который вы только что скопировали, в рабочий каталог.

Я знаю, что это немного расплывчато, но я фактически удалил папку.git на стороне сервера, как только переключился на rsync, поэтому у меня нет точных сценариев, которые я использовал, чтобы волшебство произошло. Это может быть хорошим кандидатом на полный вопрос, так что вы можете получить больше ответов таким образом.

редактировать: я знаю, что это было какое-то время, но в конце концов я нашел то, что я использовал снова:

Разверните проект с помощью Git push

Другие вопросы по тегам