2009-10-28 104 views
2

我已经在Windows上设置了我的Subversion/trac环境(现在Win7,以前曾在Vista上试用过),并且所有工作都完美无缺。但是我无法让我的提交后工作。 这里的(使用的VisualSVN和Trac在Apache上运行)的设置:TortoiseSVN永远不会运行post-commit.bat

C:\用户\马丁\库\ test_svn \钩:

后commit.bat:

call %~dp0\trac-post-commit-hook.cmd %1 %2 

TRAC-的post-commit-hook.cmd:

@ECHO OFF 
:: 
:: Trac post-commit-hook script for Windows 
:: 
:: Contributed by markus, modified by cboos. 

:: Usage: 
:: 
:: 1) Insert the following line in your post-commit.bat script 
:: 
:: call %~dp0\trac-post-commit-hook.cmd %1 %2 
:: 
:: 2) Check the 'Modify paths' section below, be sure to set at least TRAC_ENV 


:: ---------------------------------------------------------- 
:: Modify paths here: 

:: -- this one *must* be set 
SET TRAC_ENV=C:\Users\Martin\Trac\test_svn 

:: -- set if Python is not in the system path 
SET PYTHON_PATH= 

:: -- set to the folder containing trac/ if installed in a non-standard location 
SET TRAC_PATH= 
:: ---------------------------------------------------------- 

:: Do not execute hook if trac environment does not exist 
IF NOT EXIST %TRAC_ENV% GOTO :EOF 

set PATH=%PYTHON_PATH%;%PATH% 
set PYTHONPATH=%TRAC_PATH%;%PYTHONPATH% 

SET REV=%2 

Python "%~dp0\trac-post-commit-hook" -p "%TRAC_ENV%" -r "%REV%" 

TRAC - 后提交钩:

http://trac.edgewall.org/browser/branches/0.11-stable/contrib/trac-post-commit-hook

抓起我曾经在一个cmd窗口测试脚本和他们工作的所有道路。但是在TortoiseSVN提交中,没有任何反应,这让我相信Tortoise从不运行post-commit.bat。

我也测试了一个简单的预先提交,并且工作。 奇怪的是,它已经工作过,但我想我使用了早期版本的VisualSVN。

有没有人知道这里发生了什么?

非常感谢! /Martin

回答

2

提交后挂钩是运行服务器端。如果钩子正确实现,它应该适用于任何Subversion客户端。你会想看看SVN书中的this chapter

后续行动:您可以查看this博客条目。

+0

那么你建议的是它是一个权限问题?我已检查所有权限,但所有权限均为SYSTEM,本地用户和管理员拥有完全控制权限。 感谢您花时间在此! – mistalaba 2009-11-13 05:59:41

+0

您可以使用TortoiseSVN(现在)完成客户端挂钩脚本。 – blizpasta 2011-03-01 08:10:39