我试图通过SVN预提交钩子来检查我的外部。 svn:external包含通过多个项目的共享库。在预提交钩子上,我想检查外部是否指向Tag目录而不是指向主干或分支。
在工作副本文件夹中的本地计算机上,我可以成功运行命令:
svn propget svn:externals
这让我回到了外面:
https://SVNSERVER/svn/Test_Lib/trunk Test_Lib
虽然这可以在我的本地机器上运行,但我不能在Pre-Commit钩子中使用svn命令,因此我需要一个svnlook命令。
这里开始我的问题,我在Pre-Commit钩子上尝试了多个命令,例如:
svnlook propget %REPOS% svn:externals -t %TXN%
完全写出:
svnlook propget C:\Repositories\Test_Project svn:externals -t 31-2y
我尝试过多种方式放置%REPOS%
和%TXN%
,在它们周围加上和不加引号("%REPOS%", "%TXN%")
并在svn:externals部分之前和之后移动它。
不幸的是,我尝试的所有内容都会导致错误消息显示缺少propname或repository路径
svnlook: E205001: Try 'svnlook help' for more info svnlook: E205001: Missing propname or repository path argument
我搜索了Stack Overflow,找到了1个遇到同样问题的人,但他没有回答他的问题:
Trying to create a pre-commit hook that verify externals
有没有人知道这个的正确语法,或通过预提交钩子请求svn:externals的不同方法?