我为预提交挂钩实现python脚本,以检测提交消息,作者,更改的路径,然后在特定情况下引发异常或错误。
我想在VisualSVN服务器中将此脚本pre-commit.py设置为Pre-commit Hook 在挂钩中使用此命令
C:\Users\momo\Desktop\pre-commit.py %1 %2
当我要提交时,出现此错误Access Denied
似乎预提交钩子无法识别我的语法
答案 0 :(得分:1)
Python脚本在Windows上不被视为可执行文件。您应该在Windows Batch中将它们包装起来。例如,预提交的挂钩脚本可能如下所示:
set REPOS-PATH=%1
set TXN-NAME=%2
"C:\Python27\python.exe" "C:\Repositories\MyRepository\hooks\pre-commit.py" %REPOS-PATH% %TXN-NAME%
此Windows Batch脚本将运行位于C:\Repositories\MyRepository\hooks\post-commit.py
处的Python脚本,并将传递%1
和%2
参数。
手动或通过VisualSVN服务器管理器控制台将此代码放入存储库的\hooks\pre-commit.bat
或\hooks\pre-commit.cmd
文件中: