Я создал репозиторий для настройки своих веб-сайтов, репозиторий - / subversion / web, и на данный момент у меня есть только один веб-сайт, контролируемый в / subversion / web / mywebsite.
Я настроил сценарий ловушки после фиксации, который экспортирует сайт в веб-каталог на сервере для тестирования, прежде чем я публикую его отдельно, и он отлично работает.
Я бы хотел настроить сценарий таким образом, чтобы я мог управлять вторым веб-сайтом в том же репозитории, но иметь экспорт «mywebsite» только тогда, когда я регистрирую файл, связанный с этим проектом.
Я настроил его таким образом, потому что я получаю доступ к репозиторию с нескольких компьютеров через http, это упрощает создание новых проектов без необходимости создавать совершенно новый репозиторий и настраивать apache, чтобы он указывал на него и все остальное. .
последний svn работает на последней версии ubuntu с последней версией apache2
Вы можете сделать это с помощью команды «svnlook».
Вот пример хука после фиксации:
#!/bin/sh
REPOS="$1"
REV="$2"
/usr/bin/svnlook dirs-changed -r "$REV" "$REPOS" | egrep -q '^mywebsite'
if [ $? -eq 0 ] ; then
# publish site code
fi
Возможно, вам придется запустить svnlook вручную несколько раз, чтобы ознакомиться с выводом и посмотреть, как установить шаблон соответствия для grep.