我通读了这篇文章:Setting up a Symbol Server,详细介绍了如何为我的团队设置共享符号服务器。
我想知道的是将自己的符号添加到商店中。
我的问题是:我从中获得了什么?
我们假设我有以下构建过程:
如果我添加到上面的第三点,将构建的文件添加到符号存储区的能力,那给了我什么?
如果我创建一个程序,并引用提交到存储库的二进制文件,我同时获得.dll,.pdb和.xml(intellisense支持),所以我的堆栈跟踪似乎已经包含了我需要的所有内容。
这是分发.pdb的替代吗?
或者仅仅是因为我需要在WINDBG中打开.DMP文件并分析其堆栈,我可能根本没有可执行文件,只有其他人提供的.DMP文件? (也就是说,exectuable可能来自旧版本,我只获得了.DMP文件)
答案 0 :(得分:18)
不显而易见:符号服务器为您提供符号。因此,当您的代码崩溃并烧毁时,您可以调试从客户那里获得的小型转储。对客户遇到的真实问题进行事后分析绝对至关重要。因为当你的几个月前的代码版本有机会在你客户的机器上崩溃时,你已经进步了几个版本。
真正的努力不在于设置符号服务器,而是确保它具有正确的pdb文件,以便为您提供良好的调试机会。控制构建过程是该等式的关键部分。
答案 1 :(得分:1)
如果您的用户可能会发现代码存在问题但无法访问您的Subversion存储库,那么您如何获得他们需要的符号?例如,如果您正在为会计部门开发一个应用程序,并希望他们尝试一个早期版本的代码,您知道可能会追溯它们,那么您是否需要他们拥有Subversion enlistmant?
符号服务器只是一个网络位置,符号可供任何可能需要的人使用。
如果您需要符号信息,则无法替代.pdb文件。
答案 2 :(得分:1)
请看一下这篇博文:Source Server and Symbol Server Support in TFS 2010
这是关于Symbol Server&源服务器特别在TFS 2010中提供功能,但您可以获取大量信息并将其应用于其他构建和源代码控制系统。