У меня есть CVS на Debian и apache / PHP / MySql. Я помню, как недавно я работал в команде по сети, что после фиксации я мог видеть изменения на веб-сервере в приложении php.
Как я могу этого добиться?
Спасибо
Это можно сделать с помощью сценария для автоматической публикации вашего репозитория на веб-сервере каждые X минут. Этот сценарий должен только проверять, произошли ли изменения в репозитории, и приступать к его развертыванию.
Это очень полезно для сценариев разработки, но имейте в виду, что автоматическое развертывание действительно не рекомендуется для prod (я знаю, что вы не просите об этом, это просто рекомендация)
Вам понадобится обработчик Post-commit для обновления (cvs update
) /var/www
или где бы ни находился ваш DocumentRoot.
Не надо.
Если это не только сервер разработки, то это исключительно плохая идея. На фиксацию неработающего кода уходит всего секунда, значит, ваш сайт глючит.
Умная игра в этой ситуации, думаю, это использовать что-то вроде Hudson CI server и запустите несколько PHP-тестов с lint, PHPUnit и Selenium перед обновлением DocumentRoot новым кодом.
Другой допустимый вариант - разрешить обновление DocumentRoot только в том случае, если последний выпуск «помечен», так что тегирование является ручным процессом и происходит только после просмотра / тестирования кода.