title: What does setting up a symbol server give me?
body: <p>I read through this article: <a href="http://entland.homelinux.com/blog/2006/07/06/setting-up-a-symbol-server/" rel="noreferrer">Setting up a Symbol Server</a>, which goes into details on how to set up a shared symbol server for my team.</p>
  
  <p>The thing I'm wondering about is adding my own symbols into the store.</p>
  
  <p>My question is this: What exactly is it that I gain from this?</p>
  
  <p>Let's assume that I have the following build process:</p>
  
  <ol>
  <li>I commit changes into my Subversion repository</li>
  <li>A TeamCity CI tool picks up those changes and does a build + unit testing</li>
  <li>The binaries are committed to a different Subversion repository (for referencing by applications I make)</li>
  </ol>
  
  <p>If I add to the third point above, the ability to add the built files into the symbol store, what does that give me?</p>
  
  <p>If I create a program, and reference the binaries committed to the repository, I get both .dll's, .pdb's and .xml's (intellisense support), so my stack traces already seem to contain everything I need.</p>
  
  <p>Is this a replacement for distributing .pdb's?</p>
  
  <p>Or is it just for when I need to open a .DMP file into WINDBG and analyze its stacks, where I presumably don't have the executable files at all, only the .DMP file provided by someone else? (that is, the exectuables are perhaps from an older version, and I was only given the .DMP file)</p>