Я пытаюсь сделать так, чтобы Subversion автоматически развертывала текущую рабочую копию при фиксации.
например, если кто-то проверяет репо 'public_html', а затем фиксирует изменение, мне нужно, чтобы SVN автоматически запускал 'svn update / path / to / public_html /' на сервере, на котором запущен svn.
Я установил хук после фиксации, который вызывает:
/ usr / bin / svn update / путь / к / public_html /
Я убедился, что хук после фиксации является исполняемым, и если я вручную запускаю скрипт через SSH, он работает правильно и обновляет / path / to / public_html / dir, поэтому мы знаем, что скрипт после фиксации работает нормально.
Проблема, с которой я сталкиваюсь, заключается в том, что всякий раз, когда я совершаю фиксацию, я получаю эту ошибку:
Transmitting file data .svn: Commit failed (details follow):
svn: MERGE of '/svn/public_html': 200 OK (http://ourdomain.com)
Дело в том, что SVN лжет сквозь зубы: фиксация на самом деле НЕ завершается неудачей - если я вручную обновляю каталог (или вручную запускаю скрипт после фиксации), обновление завершается, и изменения отражаются на сервере.
Итак, кто-нибудь знает, почему мой хук после фиксации не работает?
Я видел довольно много сообщений на эту тему, но, похоже, ни у кого нет никаких решений, кроме «попробуйте запустить сценарий после фиксации вручную», который я пробовал, и он отлично работает .. Так что сценарий после фиксации не работает. Проблема в том, что проблема связана с самим SVN.
Любая помощь будет принята с благодарностью!