Я использую SVN-репозиторий для своей веб-разработки. У меня есть сайт для разработки, на котором хранится проверка хранилища.
Я настроил хук после фиксации SVN, чтобы каждый раз, когда была сделана фиксация в хранилище, сайт разработки обновлялся:
cd /home/www/dev_ssl
/usr/bin/svn up
Это работает нормально, но из-за размера репозитория обновления занимают много времени (около 3 минут), что довольно неприятно при выполнении регулярных коммитов. Я хотел бы изменить хук post-commit, чтобы обновлять только те файлы / каталоги, которые были зафиксированы, но я не знаю, как это сделать. Обновление «наименьшего общего каталога», вероятно, будет лучшим решением, например,
При совершении следующих файлов:
- / филиалы / feature_x / изображения / logo.jpg
- / филиалы / feature_x / CSS / screen.css
Это обновит каталог: / branch / feature_x /
Может кто-нибудь помочь мне создать решение, которое достигает этого?
Обновление :
- Хранилище и сайт разработки расположены на одном сервере, поэтому проблемы с сетью не должны возникать.
- Загрузка ЦП очень низкая, и ввод / вывод должен быть в порядке (он работает на выделенном сервере hi-spec)
- Разработка сайта ок. 7,5 ГБ в размере и содержит ок. 600 000 наименований, в основном из-за наличия нескольких веток / тегов