Я только что создал новый репозиторий. Мой сервер - 32-разрядная версия Ubuntu 12.04. Я хочу, чтобы мои коммиты действовали, как только я их совершил. Это достигается созданием рабочей копии в моем общедоступном html-каталоге и обновлением этой рабочей копии после фиксации. Я установил это, используя инструкции здесь:
http://www.frenssen.be/content/using-subversion-automatically-update-live-website
Проблема в том, что моя пост-фиксация не запускается, когда мой проект фиксируется. Мой проект отлично фиксируется. Я знаю, что этот сценарий также является допустимым, потому что я могу запустить его с помощью
env ./post-commit
внутри каталога hooks
, и он правильно обновляется.
Я подумал, что это может быть проблема с разрешениями, поэтому я широко использовал chown
, чтобы убедиться, что www-data
является владельцем:
the repo /home/svn/repo2
the working copy /var/www/html
the hook /home/svn/repo2/hooks/post-commit
the update binary /home/svn/autoupdate/autoupdate
Но все равно ничего. Мои коммиты проходят успешно, но ловушка никогда не запускается. Мой скрипт перехвата выглядит так:
#!/bin/sh
/home/svn/autoupdate/autoupdate
Кажется, весь поиск в Google указывает на проблему с разрешениями, но я не могу понять этого.
mkdir /tmp/hello
и ничего не произошло - person chiliNUT   schedule 18.11.2013tail
журнал ошибок регистрировать неудачные попытки действия фиксации для вызова ловушки после фиксации? - person chiliNUT   schedule 18.11.2013svn update
запрашивал пароль, которыйpost-commit
, конечно, не мог предоставить, поэтому я жестко запрограммировал информацию для входа в сценарий, и теперь все работающий.If your post-commit hook actually failed, I think you would see evidence of that in whatever client you were using to perform the checkin
Это определенно помогло сузить круг виновников. Спасибо за ваше время! - person chiliNUT   schedule 20.11.2013