Batch file SVN挂钩不';不执行异步
在我们的SVN服务器(Windows/VisualSVN服务器)上,我创建了一个提交后脚本来自动更新服务器上的本地工作副本(用于预览)。提交后脚本包含如下内容:Batch file SVN挂钩不';不执行异步,batch-file,asynchronous,svn,visualsvn-server,Batch File,Asynchronous,Svn,Visualsvn Server,在我们的SVN服务器(Windows/VisualSVN服务器)上,我创建了一个提交后脚本来自动更新服务器上的本地工作副本(用于预览)。提交后脚本包含如下内容: svn.exe cleanup ..... svn.exe update ..... 这很有效。然而,我们有一些更大的存储库,这需要一段时间。我希望在提交某些内容时异步运行此脚本。因此,我已将SVN指令移动到外部批处理文件中,并尝试使用CMD/C或Start命令来完成此操作 start "" "d:\svn\update-reposi
svn.exe cleanup .....
svn.exe update .....
这很有效。然而,我们有一些更大的存储库,这需要一段时间。我希望在提交某些内容时异步运行此脚本。因此,我已将SVN指令移动到外部批处理文件中,并尝试使用CMD/C或Start命令来完成此操作
start "" "d:\svn\update-repository.bat"
或
甚至
start cmd /c "d:\svn\update-repository.bat"
不提供异步性能。在服务器上更新整个存储库之前,它仍然保持提交状态
有什么想法吗?我认为svn服务器运行的命令在完成之前不会完全返回-这意味着原始的cmd将放在那里,允许您运行其他命令,但在其他情况下,等待生成的cmd将完成。只有这样,“会话”(因为缺少更好的词)才能完成并将控制权返回给Subversion 我会将要运行的命令写入文件,然后使用外部生成的命令(例如计划任务)定期运行保存的命令(注意,每次执行后删除或重命名文件)。这将使其与subversion服务器的处理分离
start cmd /c "d:\svn\update-repository.bat"