Svn 提交后钩子未执行 问题
我正在使用Svn 提交后钩子未执行 问题,svn,svn-hooks,post-commit-hook,Svn,Svn Hooks,Post Commit Hook,我正在使用SVN进行修订控制。 我想使用post-commit钩子来执行脚本,但由于某些原因它不会触发 你知道原因是什么吗 补充资料 我的服务器是一台Windows server 2012 我使用的是VisualSVN服务器2.7.4 我已将hooks文件夹中的post-commit.tmpl文件更改为post-commit.bat 我正在使用http协议来访问服务器 到目前为止我试过什么 我修改了post commit.bat文件,在c:\中创建了一个空文件,用于验证钩子是否已执行(它
SVN
进行修订控制。我想使用
post-commit
钩子来执行脚本,但由于某些原因它不会触发
你知道原因是什么吗
补充资料
- 我的服务器是一台
Windows server 2012
- 我使用的是
VisualSVN服务器2.7.4
- 我已将
文件夹中的hooks
文件更改为post-commit.tmpl
post-commit.bat
- 我正在使用
协议来访问服务器http
- 我修改了
文件,在post commit.bat
中创建了一个空文件,用于验证钩子是否已执行(它没有…)c:\
- 该脚本可以在命令行中完美地工作
- 我将协议更改为
(并共享了repo的文件夹)-不好文件://
解决方案
正如@bahrep和@dialuticus所指出的,在根c:上创建测试文件对我来说是不明智的。在对所有人都具有完全权限的子文件夹中创建文件后,文件被创建,例如,钩子毕竟被触发。尝试在C:\Temp文件夹中创建空文件。写入C:的根目录需要您可能拥有的特权,但运行SVN server的帐户可能没有 另外,尝试另一个测试,以防万一。使
pre-revprop change.bat
hook只包含一行代码“exit 0”,并尝试更改某个修订版的日志消息,甚至更改作者,看看是否有效
网络服务
帐户下运行,因此该帐户必须对您需要使用的目录/文件具有访问权限*.tmpl
钩子文件,只需在VisualSVN服务器管理器控制台中使用VisualSVN服务器的内置钩子编辑器即可C:\
中创建任何内容。使用其他目录,例如C:\myhookdirectory
对我来说,这看起来像是钩子文件夹上的权限问题。Subversion以拥有访问Subversion存储库的进程的同一用户的身份执行钩子。请检查这是否到位?它具有
Modify
权限…感谢您的回复1
:忘了提到这一点,我确实检查了它,并且该服务具有Modify
权限<代码>2:当通过VisualSvn查看时,它会显示修改,因此我猜是相同的<代码>3这只是为了调试…更新:再次测试后,在c:\中有一个子文件夹,似乎你有他们的观点。正在创建文件,因此正在触发挂钩。我希望我能把两个答案都标为“已接受”,但我不能,所以我会选择第一个答案……马上。在子文件夹中设置要创建的文件(对每个人都具有完全权限)后,文件被创建,这意味着钩子被触发。谢谢