在Windows 03 Server上搭建了 VisualSVN 服务器,想要设置成当提交到SVN中的任何修改都同步更新到本机服务器上的WEB目录下。
根据网上各种版本的参考,基本上上使用svn自带的hook功能实现:
在SVN 项目版本的存储目录的hooks 目录中,建立一个post-commit.bat 文件:
> > @echo off > > > > SET REPOS=%1 SET REV=%2 > > > > SET DIR=%REPOS%/hooks SET PATH=%PATH%; > > > > SET WORKING_COPY=D:/Websites/www svn update %WORKING_COPY% --username your_name --password your_pwd > >
注意事项:
1.需要将SVN服务器的bin目录加入到path路径中,加入后,未重启,在命令行下path值立即生效,但是SVN服务器却无法找到,总是提示:
> > 警告: post-commit hook failed (exit code 1) with output: 'svn' 不是内部或外部命令,也不是可运行的程序或批处理文件。 > >
2.需要设置SVN服务对文件桌面系统权限,否则会报无法读写文件的错:
选择本地系统账户,并勾选 允许服务与桌面交互