我写了shell脚本,我试图把这个脚本作为客户端钩子脚本,但没有得到脚本引擎哪一个我应该用来运行.sh文件。通常情况下,我已经看到.js文件将被用作SVN的钩子脚本,不幸的是我不太了解jscript,所以请帮助我如何在SVN中添加和运行脚本作为客户端钩脚本。我尝试过使用WScipt和CScirpt但是它们不适用于我的shell脚本。如何运行shell脚本作为tortoiseSVN的客户端钩脚本?
#!/bin/bash
MAIN_DIR="/cygdrive/e/Trunk/COMMON"
FILE_NAME="/cygdrive/e/Trunk_PRE_COMMIT_HOOK/long_path.txt"
lengthy_path=`find ${MAIN_DIR} -regextype posix-extended -regex '.{500,}'| awk -F'Trunk/' '{print $2}' > ${FILE_NAME}`
if [ -f ${FILE_NAME} ]
then
if [ -s ${FILE_NAME} ]
then
echo -e "\n\n\nSorry the path of a file exceeds 256 charectors, please make it shorten and try commiting again.You can see the path in $FILE_NAME"
else
echo -e "\n\n\nPath is perfect code can be committed..........."
fi
else
echo -e "\n\n\nFile not exists............"
fi
[客户端挂钩脚本只有在使用TortoiseSVN时才有可能](http://stackoverflow.com/a/8490859/1698557),或者[自动包装/混淆svn命令本身](http:// www.pal-blog.de/entwicklung/perl/better-source-svn-client-side-precommit-hooks.html)。 –
@PatrickQuirk是的,忘了提及我只使用了Tortoise SVN,请让我知道当开发人员试图将代码提交到repo时,哪个脚本引擎需要用来运行.sh脚本。 –
发布您的脚本。文件扩展名大部分是没有意义的。 –