Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Batch file 正在创建要运行.bat文件的TortoiseSVN开始提交本地钩子脚本,找不到指定的路径_Batch File_Svn_Tortoisesvn - Fatal编程技术网

Batch file 正在创建要运行.bat文件的TortoiseSVN开始提交本地钩子脚本,找不到指定的路径

Batch file 正在创建要运行.bat文件的TortoiseSVN开始提交本地钩子脚本,找不到指定的路径,batch-file,svn,tortoisesvn,Batch File,Svn,Tortoisesvn,我正在尝试让TortoiseSVN在使用开始提交钩子进行所有提交之前运行一个.bat文件。我通过右键单击文件夹->属性->Subversion->属性来定义它…->创建了一个新的钩子脚本 我试过几个不同的命令 WScript "%REPOROOT+%\precommit.bat" VBScript "%REPOROOT+%\precommit.bat" %REPOROOT+%\precommit.bat 虽然没有一个有效,但我一直发现文件没有找到。我不确定repoot是否没有定义,或者是什么

我正在尝试让TortoiseSVN在使用开始提交钩子进行所有提交之前运行一个.bat文件。我通过右键单击文件夹->属性->Subversion->属性来定义它…->创建了一个新的钩子脚本

我试过几个不同的命令

WScript "%REPOROOT+%\precommit.bat"
VBScript "%REPOROOT+%\precommit.bat"
%REPOROOT+%\precommit.bat
虽然没有一个有效,但我一直发现文件没有找到。我不确定repoot是否没有定义,或者是什么

甚至做

回显“%repoot%”给出了错误


使用“%repoot+%/precommit.bat”修复了该问题。需要使用注释中建议的正斜杠和双引号的组合

钩子脚本是否已提交到存储库?是否已签出到本地工作副本?我从未成功使用
%repoot+%
,但它可以使用
%repoot%
,因为脚本的相对路径是存储库中的路径。要调用批处理文件,您的第三次尝试是正确的。在脚本中执行
echo“%repoot%”
无法成功,因为它没有收到此值,这是一个乌龟vn内部操作(您需要将其重定向到
>con
!)…它仍然会显示错误弹出窗口。它还没有承诺回购协议,因为我们不想现在就把整个团队的工作搞砸,直到它起作用为止。我的意思是我认为%repoot%是根文件夹中的主干,它是第一个带有TortSVN复选标记/感叹号的目录。我尝试过同时执行%repoot%\trunk\precommit.bat和%repoot%\precommit.bat,但没有成功。
%repoot%
指向根,但不指向主干,因此如果脚本位于主干中,请指定
%repoot%/trunk/precommit.bat
;使用前斜杠很重要!似乎脚本甚至不必像我最初设想的那样提交。。。