Я использую сборку script для компиляции нескольких проектов С#. Бинарный вывод копируется в папку результатов, перезаписывает предыдущую версию файлов, а затем добавляется/передается в подрывную деятельность.
Я заметил, что двоичный вывод компиляции отличается, даже если вообще не было изменений в источнике или среде. Как это возможно? Разве бинарный результат не должен быть точно равным для одного входа?
Я не намеренно использую какие-либо специальные временные метки в любом месте, но компилятор (Microsoft, тот, который входит в .NET 4.0), возможно, сам добавляет метки времени?
Причина, по которой я спрашиваю, это то, что я делаю вывод в subversion, и из-за того, как работает наш сервер сборки, проверенные изменения вызывают перестройку, в результате чего еще раз измененные двоичные файлы проверяются в круге.