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

Недавно у нас был проект, в котором мы выпустили бета-версию большого веб-приложения на сервере нашего клиента. Наш клиент попросил нас исправлять ошибки по мере их поступления, и мы попытались сделать это таким же образом. Обычно создание приложения на нашем сервере-прототипе намного проще, так как мне просто нужно выполнить простую команду svn up, которая занимает секунду.

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

Так работать очень сложно. Поскольку у меня возникла эта проблема, наверняка некоторые из вас уже решили ее. Поделитесь, пожалуйста, своими решениями.

С нетерпением жду ваших ответов ... Большое спасибо за чтение, ребята.


5
408
3

Ответы:

Зависит от используемой вами среды программирования. В Smalltalk и сервере веб-приложений, таком как Аида / Интернет, мы можем обновлять действующие веб-приложения на лету, не останавливая его.

Сервер подключен к выбранному SCM, например, Monticello для Squeak Smalltalk или Store для VisualWorks. Затем новые версии вручную или автоматически загружаются в образ Smalltalk сервера.


В зависимости от инструментов, доступных на сервере, вы можете либо сделать svn diff -r x:y, где x - это ревизия, которую вы обновляли в последний раз, а y - последняя ревизия, которую вы хотите обновить (возможно, последняя ревизия в вашем репозитории), чтобы сгенерировать патч, а затем применить патч с командой patch.

Если rsync доступен на производственной платформе, и вы можете его использовать (например, ssh), вы можете настроить дерево, готовое к производству, выполнить синхронизацию его на производственном сервере, а когда появится обновление, svn обновит ваше производственное дерево и rsync снова.


Что мешает вам установить клиент Subversion на рабочий сервер?

[РЕДАКТИРОВАТЬ] Итак, кто-то не позволяет вам устанавливать необходимое программное обеспечение на сервер. Возникает вопрос: что важнее? Стабильный рабочий сервер или произвольная политика? Если кто-то не слушает аргументы, подойдите к компьютеру, запустите MS Word и напишите это письмо:

«Настоящим я отказываюсь принимать на себя ответственность за стабильность нашей производственной системы на основании того факта, что [вставить имя здесь] отказывается снабжать меня инструментами, чтобы убедиться, что производственная система содержит все необходимые файлы и данные после установки. "

Подпишите это, попросите вашего начальника подписать его, а затем отправьте копию [вставьте здесь имя]. Внезапно любая проблема, которая может возникнуть после установки, окажется на его территории. Или, говоря более ясно: он будет нести ответственность за любую ошибку, которую вы можете совершить.

Теперь все, что вам нужно сделать, это подождать. :)