Как вы обновляете свое веб-приложение на сервере? - PullRequest
7 голосов
/ 01 сентября 2008

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

Как вы решаете проблему?

Ответы [ 5 ]

1 голос
/ 29 ноября 2008

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

1 голос
/ 08 октября 2008

Или Ткань , если вы предпочитаете Python.

1 голос
/ 01 сентября 2008

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

0 голосов
/ 03 октября 2008

Полагаю, вы говорите о Ruby on Rails.

Ознакомьтесь с HowTo wiki:

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

0 голосов
/ 01 сентября 2008

@ Andrew

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

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

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

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

...