Как работает «Source Stamping»? - PullRequest
3 голосов
/ 10 декабря 2011

В презентации Bungie (Жизнь на Bungie Farm) упоминается функция в Visual Studio с именем «Source Stamping». Я хотел бы прочитать немного больше информации на эту тему, но найти связанную информацию на MSDN оказалось трудно.

"Мы также используем функцию Visual Studio, которая называется маркировка исходного кода, которая является параметром компоновщика, который используется для указания конечного местоположения на сервере версии исходного кода, которая использовалась для создания определенного набора двоичных файлов. По окончании сборки источник копируется в это местоположение, и, поскольку это местоположение помещено в pdbs, Visual Studio знает, что при отладке сборки с сайта сборки он должен извлекать источник из этого расположения, чтобы использовать его при пошаговом выполнении. код. «

То, что я ищу, - это некоторая информация, которая описывает соответствующие параметры компоновщика для настройки аналогичной среды сборки / отладки.

В дополнение к моему вопросу. Возможно, я был немного преждевременным. В части презентации, которую я перечитал, упоминается точная настройка компоновщика / SOURCEMAP. Но это, похоже, недокументировано.

Ответы [ 2 ]

2 голосов
/ 10 декабря 2011

Эта функция называется Исходный сервер , где информация, необходимая для извлечения правильной исходной версии, встраивается в PDB с использованием инструментов и сценариев, перечисленных на странице исходного сервера.

ИспользованиеВ этой системе, если у вас есть доступ к частным (необработанным) PDB для вашего проекта, ваш отладчик может извлечь исходный файл из вашей системы контроля версий.Поддерживаемые системы: Team Foundation Server, Perforce, Visual SourceSafe, CVS и Subversion.

0 голосов
/ 10 декабря 2011

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

(Представьте, что вы добавите в исполняемый файл md5sum -или лучше - исходного кода, скомпилированного в).

...