svn同步挂钩scrpts

svn同步挂钩scrpts,svn,hook,svnsync,Svn,Hook,Svnsync,我正在进行带复制的直写代理的最终配置。我有一个主服务器和两个从服务器。apache配置工作正常,但我在试图弄清楚需要对哪些钩子进行envoke以使复制发生在从机上时遇到了问题。我可以从主机手动执行svnsync,但我无法让它与钩子一起工作 在从机上,我有一个空的pre-revprop-change.bat,只需退出0。 在master上,我有一个pre-lock.bat,它发出svn-propdel命令来释放远程存储库上的锁。 我还有一个start-commit.bat,它有svnsync in

我正在进行带复制的直写代理的最终配置。我有一个主服务器和两个从服务器。apache配置工作正常,但我在试图弄清楚需要对哪些钩子进行envoke以使复制发生在从机上时遇到了问题。我可以从主机手动执行svnsync,但我无法让它与钩子一起工作

在从机上,我有一个空的pre-revprop-change.bat,只需退出0。 在master上,我有一个pre-lock.bat,它发出svn-propdel命令来释放远程存储库上的锁。 我还有一个start-commit.bat,它有svnsync init和svnsync sync命令。当我进行提交时,该过程将超时


对我所缺少的东西有什么想法吗?

您的设置太复杂了。一旦您成功地手动初始化了svnsync进程,您只需要在post-commit钩子中添加以下行

/usr/bin/svnsync sync --non-interactive --no-auth-cache --source-username=XXX --source-password='XXX' --sync-username=YYY --sync-password='YYY' http://source/svn-proxy-sync/REPO 2>&1 > /dev/null &
不要删除-r0属性上的锁,因为如果使用上面的post-commit钩子进行两次提交,则第二次提交可以尝试同步repo,而第一次提交仍在后台进行

2> &1>/dev/null是必需的,否则svnsync的后台无法工作