среда, 24 ноября 2010 г.

Памятка - настройка автоапдейта рабочей копии по коммиту в SVN

Через интерфейс VisualSVN Server или в файл C:\Repositories\<REPOSITORYNAME>\hooks\post-commit.cmd добавить скрипт post-commit hook:

rem Уведомление на email
"%VISUALSVN_SERVER%\bin\VisualSVNServerHooks.exe" commit-notification "%1" -r %2 --from user@host.ru --to user@host.ru --smtp-server mx.host.ru --smtp-user username --smtp-password userpassword
rem Собственно автообновление...
c:
cd C:\PROJECTS\PROJECT_PATH\
svn update --username svn_user_name --password svn_user_password 1> svn.log 2> svnerr.log
rem ...и компиляция
%windir%\Microsoft.NET\Framework\v3.5\msbuild.exe PROJECT.sln /p:Configuration=Release 1> msbuild.log 2> msbuilderr.log
Поскольку выполнять скрипт хука будет C:\Program Files\VisualSVN Server\bin\VisualSVNServer.exe под учетной записью NT AUTHORITY\NETWORK SERVICE надо дать права на каталог с исходниками:

cacls PROJECT_PATH /E /T /G "NT AUTHORITY\NETWORK SERVICE":F
При непонятках - смотреть svn.log, svnerr.log, msbuild.log, msbuilderr.log в каталоге рабочей копии проекта.

Комментариев нет:

Отправить комментарий