Основной вопрос о сервере Subversion на веб-сервере разработки - PullRequest
0 голосов
/ 23 сентября 2011

Я только что настроил веб-сервер разработки, где люди будут тестировать некоторые изменения, прежде чем вносить эти изменения на рабочий веб-сервер. В настоящее время команда веб-разработчиков привыкла использовать Subversion для внесения своих изменений на рабочий сервер. Я хотел бы также настроить сервер SVN на веб-сервере разработки.

У меня такой вопрос: как я могу сделать так, чтобы subversion сохраняла репозиторий в корне документа Apache, чтобы файлы, которые они проверяют в репозитории, попадали прямо в документ и обслуживались веб-сервером.

Поскольку я настроил его сейчас, кажется, что когда файлы фиксируются, они превращаются в виртуальные файлы в каталоге репозитория svn (видны только с "svn ls file: /// repo / file", а не просто "ls" /var/www/file".

Спасибо

Ответы [ 2 ]

2 голосов
/ 23 сентября 2011

Это не то, как работает Subversion. Обычно он не хранит файлы в формате, который напрямую доступен. Что вы хотите сделать, это добавить хук после фиксации, который обновит извлеченную копию в веб-каталоге. Поиском в Google «Subversion post-commit update» для получения дополнительной информации.

0 голосов
/ 23 сентября 2011

Вы можете управлять своим исходным кодом, используя subversion, но реальная проблема заключается в том, что вы изменяете свою установку и затем архивируете ее вместо «обычной» рутины разработки;который должен внести ваши изменения, а затем установить их.

Лучшим способом было бы держать сервер Subversion вдали от рабочего веб-сервера.Ваша коробка разработки проверяет изменения на сервере Subversion.Один «специальный» пользователь сборки проверяет все содержимое subversion и создает zip-файл (или что-то более подходящее), а затем этот «zip-файл» копируется на рабочий сервер и «устанавливается».

Это будетпредоставит вам больше гибкости при развертывании на вашем веб-сервере, и это позволит вам тестировать изменения на других некритических веб-серверах (если вы когда-нибудь решитесь стать такими модными) перед развертыванием на рабочем сервере.Это также предотвратит возникновение ошибок, которые регистрируются непосредственно при отключении веб-сервера (поскольку вы можете не развертывать сборку на веб-сервере, пока вы проверяете последующие «исправления» для внесенных ошибок).

В любом случае, вы можете использовать crontab или другие функции, подобные cron, для создания «ночных» пакетов и т. Д. Ключ не в том, чтобы создавать больше работы, которую должен выполнять человек, а в том, чтобы создавать больше работы, чем автоматизированные программыможно сделать просто, чтобы у вас было больше безопасности в случае возможных расстройств.Ваша роль должна состоять в том, чтобы решить, хотите ли вы установить «этот» пакет, и выполнить команду (или две) для его установки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...