Исходный код отличается от оригинальной версии

мы работаем над приложением .NET и недавно начали использовать Git для управления версиями.

наш последний выпуск был помечен в Git, и теперь я пытаюсь отладить некоторую проблему.

вот что я сделал:

  1. установлено приложение (из выпуска) на моем компьютере.
  2. проверил тегами версии.
  3. запущен VS и подключен к процессу.
  4. помещенные точки останова над некоторой частью код.

Я получаю сообщение:" исходный код отличается от исходной версии", однако это фактический код, который был скомпилирован для выпуска этой установленной версии.

Что я здесь делаю не так?

использование VS2008, если это имеет значение.

BTW: каков механизм, который используется для сравнения, если двоичные файлы отличаются от исходного кода?

при клонировании РЕПО из Git, например, он изменит все файлы / папки дата к текущей дате. Это значение (datetime) используется для определения исходного кода против двоичного?

1 ответов


проблема заключалась в том, что я не использовал (или не хранил) исходные символы для этого выпуска.

ранее я думал, что символы содержат только информацию о строке исходного кода и не нужны для фактической отладки программы под VS. очевидно, я ошибался.

хороший ресурс по символам для тех, кто ищет проблемы с ними: http://www.wintellect.com/CS/blogs/jrobbins/archive/2009/05/11/pdb-files-what-every-developer-must-know.aspx

этот пост также содержит несколько других ссылок на журнал MSDN с более ценной информацией.