[英]Commit blocked by pre-commit hook SVN
我的服务器上有Subversion,当我尝试提交时出现了以下错误:
error creating module:org.tigris.subversion.javahi.ClientException:svn:
Commit blocked by pre-commit hook(exit code 199) with no output.
svn MERGE of '/svn/mssql/trunk':409 Conflict (http://www.domain.com)
然后我尝试检查/ var / log / httpd / error_log中的错误日志
我收到像下面这样的错误:
Could not MERGE resource "/svn/[project name]/!svn/act/8b7476df-3701-0010-a025-c590208c08a0" into "/svn/[project name]/trunk"
Commit blocked by pre-commit hook (exit code 199) with no output. [409, #165001]
那是什么错误?
如何解决呢?
有两种不同类型的预提交挂钩:
hooks
目录中。 如果挂钩不是可执行文件,或者没有名为pre-commit
的挂钩脚本,则挂钩不会运行。 当您说pre-commit hook时 ,您是在谈论服务器上的钩子还是计算机上的钩子 ? 您说您通过将exit 0
放在前面来修改了该钩子。
您没有说明钩子是做什么的,也没有说明是谁把它放在那里的。 这使得很难确定出了什么问题。 有成千上万的Subversion钩子围绕着执行各种任务。 我不知道这是什么。 谁设置了这个钩子? 默认情况下,Subversion没有活动的钩子。 一定有人添加了它。 谁干的?
而且,他们为什么要挂这个钩子? 这个挂钩应该完成什么。 一些挂钩可防止将重复文件添加到存储库。 有些可以防止套管不匹配。 有的做安全,有的只是开玩笑。
将您的钩子粘贴到Pastebin上 ,然后回来,让我们知道您已更新它。 让我们知道是谁添加了这个钩子以及为什么。
否则,我们无能为力。
我可以使用以下代码在预提交脚本上添加新行来解决此问题:
#!/bin/sh
exit 0;
之后,我可以提交,更新,签出等:)
但是我必须在每个存储库项目上手动添加这些行吗? 克服这个问题的另一个思路是什么?
谢谢
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.