注意:测试之前一定要先把服务器站点根目录代码更新到最新版本
强制书写提交说明
首先在相应版本库的hooks目录(我的是C:\svnRepositories\fsmtestsvn\hooks
)新建一个文件:pre-commit.bat
文件内容编辑如下:
@echo off
setlocal
set REPOS=%1
set TXN=%2
rem 这个svn服务器安装目录下面的bin下面的svnlook.exe
set SVNLOOK="C:\svnserver\bin\svnlook.exe"
rem 检查不能为空,至少输入十个字符(几个点就是几个字符)
%SVNLOOK% log %REPOS% -t %TXN% | findstr ".........." > nul
if %errorlevel% gtr 0 goto err
exit 0
:err
echo 您正在操作的项目是fsmtestsvn >&2
echo 不允许空日志,提交中断(需要不小于10个英文字符或5个汉字的日志)! >&2
exit 1
自动更新同步服务器站点目录的代码
1. 首先在版本库的hooks目录(我的是C:\svnRepositories\fsmtestsvn\hooks
)新建一个文件:post-commit.bat
- 文件内容编辑如下:
前一个路径为svn服务端
的svn.exe的路径,后一个为需要被同步的网站站点目录,用户名和密码就是你登录并检出版本库时的用户密码
@echo off
"C:\svnserver\bin\svn.exe" update "C:\fsmSoftWeare\phpstudy\WWW\testsvnhook" --username "xxx" --password "xxx"
到此测试一下,首先将服务器上面的网站部署目录代码更新到最新版,然后到本地提交一个测试文件,看服务器上面是否自动更新,如果更新成功则到此结束,如果提交过程中报错,应该是权限不够,看第二步
2. 到计算机的服务里面找到VisualSvn server,右键属性,在登录选项里面,把此账户改为.\Administrator
,密码改为你的服务器密码,点击确定保存,然后右键停止VisualSvn server服务,再重新开启该服务
快捷方式添加hook
直接在版本库右键=>properties=>hooks里面编辑相应的hook
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。