SubversionNotify.exe 减慢颠覆速度
当从 post-commit.bat 调用 subversionnotify.exe 时,它会减慢 subversion 中的所有进程。例如,在 subversion 中创建一个新文件夹需要 20-25 秒,否则只需 1-2 秒即可创建。但是当我从 hooks 文件夹中删除这个 post-commit.bat 时,一切正常。有人可以指导我解决这个问题吗?另外,对于我来说,拥有 post-commit.bat 作为电子邮件通知的必要条件也非常重要。
When subversionnotify.exe is called from post-commit.bat it slows down all the process in subversion. For example creating a new folder in subversion takes 20-25 seconds which otherwise is created in 1-2 seconds. But when I remove this post-commit.bat from hooks folder, everything works normally. Could someone guide me with this issue? Also its really important for me to have post-commit.bat as its necessary for e-mail notification.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
Subversion 会等待直到提交后完成。在 Unix 中,你可以通过添加“&”来规避这个问题。因此调用会产生一个新进程。
但是我不知道如何在批处理文件中执行此操作(是否可能?我怀疑..)
clearvision 有一个解决方案,名为 "Subversion Hook Accelerator" 在 Windows 上执行完全相同的操作:生成一个进程并立即结束该进程提交后挂钩。
如果这有帮助,请发帖,我以前从未使用过它,因为我使用的是 Unix..
Subversion waits until the post-commit finishes. In Unix you can circumvent this by adding a "&" to the call therefore spawning a new process.
However I do not know how to do it in Batch files (is it even possible? I doubt..)
There is a solution from clearvision called "Subversion Hook accelerator" which does exactly the same thing on windows: spawning a process and immediately end the post-commit hook .
Please post if this helped, I never used it before, because I am using Unix..
我之前遇到过导致执行时间过长的问题:
如果您没有使用 SVN 到 ActiveDirectory 用户名匹配功能,请确保 SubversionNotify 配置文件 MailServer 节点没有 ADGlobalCatalog 属性。即使该属性为空,SubversionNotify 仍会尝试建立 AD 连接。这可能会增加半分钟左右的执行时间,具体取决于与 AD 建立连接的能力、AD 的大小以及用户是否存在以及是否可以在 AD 中找到。
如果您使用 AD 集成,您可能需要考虑直接在配置文件中定义电子邮件地址。
编辑: ADGlobalCatalog="" 可能没问题。
您还可以通过在 subversionNotifyConfig 元素上设置 LoggingLevel="DEBUG" 属性来打开详细的日志记录信息。运行 SubversionNotify 进行修订并查看日志。您可能会在那里找到一些可以帮助您的信息。
Something I've run into before that caused long execution times:
If you're not using the SVN-to-ActiveDirectory user name matching feature, make sure the SubversionNotify config file MailServer node does not have the ADGlobalCatalog attribute. Even if the attribute is empty, SubversionNotify still attempts to make an AD connection. This can add half a minute or so to the execution time depending on the ability to establish connection to the AD, the size of the AD, and whether or not users exist and can be found in the AD.
If you are using the AD integration, you might want to consider just defining email addresses directly in the config file.
EDIT: ADGlobalCatalog="" might be fine.
You can also turn on detailed logging information by setting the LoggingLevel="DEBUG" attribute on the subversionNotifyConfig element. Run SubversionNotify for a revision and view the log. You might find some info to help you out in there.