Допустим, мы управляем сайтом http://example.com и его более новая тестовая версия http://new.example.com с Subversion (SVN).
Было бы неплохо сделать следующее:
Если да, то какое программное обеспечение использовать для обновления сайтов? rsync? Что именно писать в конфигурации SVN?
«Управление сайтом с помощью Subversion» - слишком распространенное и нечистое определение. Как ты справляешься?
В любом слючае:
Ответ на вопрос "какое ПО использовать для обновления сайтов?" зависит от ответа на вопрос «Как управляются сайты» и «Какие методы доступа можно использовать для обновления сайтов». Потому что они (программное обеспечение и метод) могут быть
svn up
и более или менее сложный хук после фиксации
РЕДАКТИРОВАТЬ
В случае неверсированного дерева, как на том же хосте, что и репо, вы можете использовать его после фиксации.
svn export file:///<PATH-TO-REPO> <TEMP-DIR> & mv -r <TEMP-DIR> <SITE-ROOT>
или
svnlook changed
предоставит вам список измененных файлов с относительными путями, которые вы должны собрать и скопировать в правильное место назначения. Образец>svnlook.exe -r 24 changed .
U trunk/Hello.de.txt
U trunk/Hello.en.txt
U trunk/Hello.fr.txt
Вы должны обработать статусы (первый столбец) A | U (добавлено / обновлено), возможно, также D (удалено)
Цели каждой фиксации (предварительная проверка перед обработкой файлов) можно проверить с помощью svnlook dirs-changed
. Для той же ревизии, что и в примере выше
>svnlook.exe -r 24 dirs-changed .
trunk/