MSBuild - 每次清理+构建后,程序集略有不同

时间:2010-01-05 18:38:40

标签: msbuild assemblies

我正在尝试使用现有的一次性Click-once实现。目前,我们手动更新我们实际更改的程序集的清单。我试图基于现有组件和新构建的组件的二进制比较来使其自动化。不幸的是,似乎每次运行clean + build(自动构建脚本)时,程序集之间存在细微差别,这实际上使我们的一次性解决方案的使用无效。我猜这些差异是由某种guid生成或类似的东西引起的。反正是为了防止装配中的差异吗?

不幸的是,由于我们的分支/ CI策略,我没有选择不清理,因为每个版本都来自新的分支。

否则,有关如何比较两个程序集以查看是否有任何代码更改而无法访问源代码的任何建议。

谢谢,

大卫

2 个答案:

答案 0 :(得分:0)

通常,autobuild系统会检查二进制文件与源文件(或目标文件与源文件,具体取决于语言)的文件系统时间戳。如果源比二进制/对象更新,则会触发重建。这种策略可能对您更有效,而不是实际区分二进制文件/

答案 1 :(得分:0)

我发现BitDiffer是www.BitWidgets.com的一个工具,可以比较装配中的变化。虽然这比二进制比较运行得慢,但它不需要让MSBuild创建相同的程序集。

谢谢,

大卫