Я использую сценарий сборки для компиляции нескольких проектов C#. Двоичный вывод копируется в папку результатов, перезаписывая предыдущую версию файлов, а затем добавляется/фиксируется в Subversion.
Я заметил, что двоичный вывод компиляции различны, даже если не было никаких изменений в источнике или окружающей среде. Как это возможно? Разве двоичный результат не должен быть абсолютно одинаковым для одного и того же ввода?
Я нигде намеренно не использую какие-либо специальные временные метки, но компилятор (Microsoft) , тот, который включен в .NET 4.0), возможно, сам добавляет временные метки?
Причина, по которой я спрашиваю, заключается в том, что я фиксирую выходные данные в Subversion, и из-за того, что наш сервер сборки работает, зарегистрированные изменения вызывают пересборку, в результате чего снова измененные двоичные файлы проверяются по кругу.
Подробнее здесь: https://stackoverflow.com/questions/892 ... ling-again