我在SVN源代码控制下有一个SSIS包。我在VS2010中打开包,并对派生列数据流组件中的单个表达式进行小的更改。我单击确定,然后保存包(保存需要几秒钟,这似乎很奇怪,因为我只进行了一些小改动)。当我检查软件包的.dtsx文件是否有更改时,TortoiseMerge会报告文件的TON更改。我希望看到我对表达式所做的小改动,但它已被有效地隐藏在所有其他更改中。
有没有办法阻止Visual Studio在保存时对包进行额外的更改?
在更详细地检查更改后,我看到VersionBuild和VersionGUID已更新,根据this这是有道理的。除此之外,似乎额外的更改都只是某些XML元素重组的结果。换句话说,保存前后的包内容相同(版本和表达式更改除外),但内容的组织已更改。
编辑:打开包的行为似乎导致了XML的重新排列。首次打开包后,打开任何任务/数据流组件,单击“确定”,然后保存包。这会导致重新安排包XML。但是,如果我打开包并重复这些步骤,则只会更改版本信息。更进一步,如果我关闭软件包,重新打开它,然后再次执行这些步骤,则会重新组织XML。