【发布时间】:2011-03-31 04:12:02
【问题描述】:
我最近设置了一个符号服务器,并在我们的构建脚本中添加了SrcSrv 支持,以便我们可以轻松地从现场调试故障转储,并让 WinDbg 和/或 Visual Studio 调试器从中获取正确版本的源文件我们的 Subversion 存储库用于编译我们应用程序的任何特定版本崩溃。
我在我们的构建脚本中添加了一行来调用 Debugging Tools for Windows 软件包附带的 stock svnindex.cmd 脚本,但发现该脚本会混淆包含 URI 转义字符(如空格)的存储库文件路径,因此 WinDbg 可以'不要从存储库下载文件。
注意svnindex.cmd(特别是它启动的svn.pm Perl 脚本)从svn info 命令的输出中获取源文件的存储库位置,并svn URI 转义存储库路径。当svnindex.cmd 遇到这种情况时,它会破坏路径。比如它会转路径
"http://mysvnrepo/My%20Application/trunk/Database%20Layer/OracleAdapter.cs"
进入
"http://mysvnrepo/My20Layer/OracleAdapter.cs"
事实证明,SrcSrv 将“%”之间的任何内容解释为它在运行时替换的变量名。
假设重命名我们存储库中的所有目录以删除可能会被 URI 转义的空格和其他“特殊”字符是不可行的,我该如何解决这个限制?
【问题讨论】:
标签: svn debugging windbg pdb-files srcsrv