目的
找 到SVN Server中的仓库(Repositories)文件夹的位置,在相应的项目文件夹中找到hooks文件夹。在该文件夹中添加一个post- commit文件;当有commit动作发生时(提交到SVN Server时)就会执行这个post-commit文件,在该文件实现数据的复制、
步骤
1.找到svn服务器端某个项目仓库目录下(本例中服务端已新建一个test项目):
2.在hooks目录下新建post-commit.bat 文件,内容如下:
@echo off
SET REPOS=%1
SET REV=%2
SET DIR=%REPOS%/hooks
SET PATH=%PATH%;
SET WORKING_COPY=E:/myweb //此处是你的项目路径
svn update %WORKING_COPY% --username tianyl --password 111111 //输入svn用户名密码
3.web目录下一定要用TortoiseSVN checkout出Repositories的代码
4..还有一个注意问题——Visual SVN Server的权限,否则可能会出现下列错误:
post-commit hook failed (exit code 1) with output:
svn: E155004: Working copy 'D:/www/Test' locked
svn: E200031: sqlite: attempt to write a readonly database
svn: E200031: sqlite: attempt to write a readonly database
svn: run 'svn cleanup' to remove locks (type 'svn help cleanup' for details)
原因是Visual SVN Server服务的执行权限不够,不能对指定目录做读写操作。解决办法,修改Visual SVN Server
简单操作 windown下在运行中输入 services.msc 找到visual svn server 服务 右键属性 登陆面板 设置桌面交互或者管理员权限再试
如图: