如何为SVN中的特定文件夹使用预提交挂钩(Windows批处理文件)?
我想在SVN(即Windows的bat文件)中创建一个预提交钩子,用于检查空日志消息。此外,我只想针对SVN中的特定文件夹执行此检查 有人能帮忙吗 问候,,如何为SVN中的特定文件夹使用预提交挂钩(Windows批处理文件)?,svn,hook,pre-commit,Svn,Hook,Pre Commit,我想在SVN(即Windows的bat文件)中创建一个预提交钩子,用于检查空日志消息。此外,我只想针对SVN中的特定文件夹执行此检查 有人能帮忙吗 问候,, Ruhee Jaiswal如果您使用的是Windows和TortoiseSVN,我建议您为此使用svn属性 tsvn:logminsize为提交设置日志消息的最小长度。 如果输入的消息比此处指定的短,则提交将被取消 残废此功能对于提醒您提供 每个提交都有适当的描述性消息。如果此属性不是 设置,或者该值为零,则允许使用空日志消息 还要确保查看
Ruhee Jaiswal如果您使用的是Windows和TortoiseSVN,我建议您为此使用svn属性 tsvn:logminsize为提交设置日志消息的最小长度。 如果输入的消息比此处指定的短,则提交将被取消 残废此功能对于提醒您提供 每个提交都有适当的描述性消息。如果此属性不是 设置,或者该值为零,则允许使用空日志消息 还要确保查看类似bug跟踪器的集成
如果您真的想在服务器端使用钩子来实现这一点,那么您可以尝试,在这种情况下,您的问题是重复的:)如果您在Windows上并且使用TortoiseSVN,我建议您为此使用svn属性 tsvn:logminsize为提交设置日志消息的最小长度。 如果输入的消息比此处指定的短,则提交将被取消 残废此功能对于提醒您提供 每个提交都有适当的描述性消息。如果此属性不是 设置,或者该值为零,则允许使用空日志消息 还要确保查看类似bug跟踪器的集成 如果您真的想在服务器端使用钩子实现这一点,您可以尝试,在这种情况下,您的问题是重复的:)
路径
:
路径临时文件的路径,其中包含启动操作的所有路径。每个路径都在临时文件中的单独一行上 因此,当调用钩子时(可以使用任何语言),请执行以下步骤:
MESSAGEFILE
的内容。如果里面有评论,一切正常,从脚本返回successful(我不记得成功是用0还是!0表示的,试试看)消息文件
为空,请浏览文件路径,查看其中是否有受影响的元素。如果是,返回一个错误;否则返回成功路径
:
路径临时文件的路径,其中包含启动操作的所有路径。每个路径都在临时文件中的单独一行上 因此,当调用钩子时(可以使用任何语言),请执行以下步骤:
MESSAGEFILE
的内容。如果里面有评论,一切正常,从脚本返回successful(我不记得成功是用0还是!0表示的,试试看)消息文件
为空,请浏览文件路径,查看其中是否有受影响的元素。如果是,返回一个错误;否则返回成功除此之外,您还可以使用
svnlook dir changed
检查当前提交的特定目录
所以你可以加上
svnlook dir-changed %REPOS% -t %TXN% | findstr your_path > nul
if %errorlevel% equ 0 exit 0
svnlook log %REPOS% -t %TXN% | findstr . > nul
if %errorlevel% gtr 0 (goto err) else exit 0
除此之外,您还可以使用
svnlook dir changed
检查当前提交的特定目录
所以你可以加上
svnlook dir-changed %REPOS% -t %TXN% | findstr your_path > nul
if %errorlevel% equ 0 exit 0
svnlook log %REPOS% -t %TXN% | findstr . > nul
if %errorlevel% gtr 0 (goto err) else exit 0
@NikolaSmiljanić的可能重复:不要认为这是重复的,因为OP只想对特定文件夹执行钩子(即检查空注释).@NikolaSmiljanić的可能重复:不要认为这是重复的,因为OP想执行钩子(即检查空注释)仅适用于特定文件夹。。。