设置符号服务器给我的是什么?

时间:2010-02-09 23:41:33

标签: .net symbol-server

我通读了这篇文章:Setting up a Symbol Server,详细介绍了如何为我的团队设置共享符号服务器。

我想知道的是将自己的符号添加到商店中。

我的问题是:我从中获得了什么?

我们假设我有以下构建过程:

  1. 我将更改提交到我的Subversion存储库
  2. TeamCity CI工具获取这些更改并进行构建+单元测试
  3. 二进制文件被提交到不同的Subversion存储库(用于我做的应用程序的引用)
  4. 如果我添加到上面的第三点,将构建的文件添加到符号存储区的能力,那给了我什么?

    如果我创建一个程序,并引用提交到存储库的二进制文件,我同时获得.dll,.pdb和.xml(intellisense支持),所以我的堆栈跟踪似乎已经包含了我需要的所有内容。

    这是分发.pdb的替代吗?

    或者仅仅是因为我需要在WINDBG中打开.DMP文件并分析其堆栈,我可能根本没有可执行文件,只有其他人提供的.DMP文件? (也就是说,exectuable可能来自旧版本,我只获得了.DMP文件)

3 个答案:

答案 0 :(得分:18)

不显而易见:符号服务器为您提供符号。因此,当您的代码崩溃并烧毁时,您可以调试从客户那里获得的小型转储。对客户遇到的真实问题进行事后分析绝对至关重要。因为当你的几个月前的代码版本有机会在你客户的机器上崩溃时,你已经进步了几个版本。

真正的努力不在于设置符号服务器,而是确保它具有正确的pdb文件,以便为您提供良好的调试机会。控制构建过程是该等式的关键部分。

答案 1 :(得分:1)

如果您的用户可能会发现代码存在问题但无法访问您的Subversion存储库,那么您如何获得他们需要的符号?例如,如果您正在为会计部门开发一个应用程序,并希望他们尝试一个早期版本的代码,您知道可能会追溯它们,那么您是否需要他们拥有Subversion enlistmant?

符号服务器只是一个网络位置,符号可供任何可能需要的人使用。

如果您需要符号信息,则无法替代.pdb文件。

答案 2 :(得分:1)

请看一下这篇博文:Source Server and Symbol Server Support in TFS 2010

这是关于Symbol Server&源服务器特别在TFS 2010中提供功能,但您可以获取大量信息并将其应用于其他构建和源代码控制系统。