Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ms-access/4.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
Svn pre-revprop-change-hook或失败_Svn_Tortoisesvn_Svn Hooks - Fatal编程技术网

Svn pre-revprop-change-hook或失败

Svn pre-revprop-change-hook或失败,svn,tortoisesvn,svn-hooks,Svn,Tortoisesvn,Svn Hooks,我不知道这个钩子是现成的,还是我的钩子坏了,我只需要更换它,但当我去尝试编辑提交上的日志注释时,我会收到以下错误消息: DAV请求失败;可能是存储库的pre-revprop更改挂钩失败或不存在 至少一次属性更改失败;存储库未更改 设置属性“log”时出错 我使用的是Ortoisev1.6.7,但自从我安装了Ortoise之后,一直都有这个问题,只是从来没有研究过它,但它非常烦人 然而,由于我不知道如何使用Tortoise进行svn命令行调用,我只是进入存储库并打开pre-refprop更改模板

我不知道这个钩子是现成的,还是我的钩子坏了,我只需要更换它,但当我去尝试编辑提交上的日志注释时,我会收到以下错误消息:

DAV请求失败;可能是存储库的pre-revprop更改挂钩失败或不存在
至少一次属性更改失败;存储库未更改
设置属性“log”时出错

我使用的是Ortoisev1.6.7,但自从我安装了Ortoise之后,一直都有这个问题,只是从来没有研究过它,但它非常烦人

然而,由于我不知道如何使用Tortoise进行svn命令行调用,我只是进入存储库并打开pre-refprop更改模板,下面是其中的内容

REPOS="$1"
REV="$2"
USER="$3"
PROPNAME="$4"
ACTION="$5"

if [ "$ACTION" = "M" -a "$PROPNAME" = "svn:log" ]; then exit 0; fi

echo "Changing revision properties other than svn:log is prohibited" >&2
exit 1

所以我还在想办法改变它,让乌龟(subversion)允许我编辑评论。为什么要编辑评论?因为有很多次当我意识到我遗漏了x,y,z之后,我忘记了在提交后添加更多的评论。任何人都会这样。虽然允许开发人员这样做存在安全风险,但我们每2小时备份一次存储库,因此如果有人通过并删除存储库,我愿意冒这个风险,因为我们已经备份了存储库。这种风险不应掩盖随意修复注释的能力。

如果您的存储库位于windows计算机上,只需创建一个名为 pre-revprop-change.bat 并添加行

exit 0

在它里面。

对于那些使用它的人来说,这只是一个小小的跟进

您可以按照以下步骤操作:

1。)启动VisualSVN服务器管理控制台

2。)右键单击所选存储库并选择“属性”:

3。)选择“预修订属性更改挂钩”,然后单击编辑按钮:

4。)输入您的脚本,最小的可能是Stefan建议的
退出0

5。)用“确定”关闭所有对话框,然后完成操作


下次更改日志消息时,应该会成功。

如果您使用的是在线svn托管服务,如assembla,请使用Uwe Keim提供的说明进行指导。您只需要在svn主机网站的某个位置找到您的svn设置


对于assembla>转到您的项目>svn选项卡>设置>左侧菜单中的服务器端挂钩>查看“可用的pre-revprop更改挂钩”>单击旁边的安装按钮>单击svn选项卡返回您的项目。

仅使用“退出0”创建bat文件。移除所有其他rem'ed管线。 将其保存到Path\Repositories\hooks文件夹中作为“pre revprop change.bat”并尝试重新运行


退出0

有趣的是,我不是命令行专家。完全忽略模板的做法是什么?也许你也可以帮我使用.bat,强制我的开发人员在任何评论中输入x字符?这是一个有点可疑的解决方案-OP主要是希望允许更改评论,而不是更改作者,删除评论等。@Stefan-我将此文件放在哪里?更重要的是,它是做什么的?在2019年,Assembla允许通过其UI调整此设置:<代码>SVN
设置
常规设置
允许更改现有版本的SVN:log属性