[英]How do I coordinate assembly version information in my tree of many C# projects?
您采取了哪些方法来协调对程序集组的版本和版权的更改?
我有一棵由许多 csprojs 组成的树,每个都有自己的 AssemblyInfo 文件。 作为构建过程的一部分,我想设置版权年份和版本。 看起来以下选项可用,但文件修改是我迄今为止看到的唯一一个:
[assembly: AssemblyFileVersion("${ENV.VERSION")]
)我习惯于通过命令行参数保持 Java/C++ 中生成的文件的源代码树干净,在单个文件中定义和集中所有版本规范。
您使用什么方法来保持版本同步和可管理?
谢谢
彼得
在顶部文件夹中,我放置了一个 CommonAssemblyInfo.cs,其中包含...常见的东西,例如版权和 FileVersion。 该文件仅包含一些默认属性,并由构建服务器上的脚本(一个 simple.bat 文件)重新生成,在我的例子中是 Hudson。 在每个项目 AssemblyInfo.cs 中删除这些公共属性。
在解决方案的每个项目中,我都添加了这个文件。 但使用“添加为链接” - 添加现有文件时,在“添加”按钮的下拉菜单中可用。 即所有项目只包含对同一文件的引用,因此只有一个文件需要更新。
无论您采用哪种方式来实际更新版本号,都可以使用单独的 AssemblyInfo.cs 文件来指定共享版本。
就结构而言,在其他项目上方的某个级别创建文件,然后将其添加到所有项目(从 Visual Studio 中),但这样做时请确保 select '添加为链接'。
我也使用了 MSBuild 任务来处理更新,我只是想不出 - 你使用哪个构建引擎?
理论上,您可以拥有一个程序集文件。 只需在所有其他项目中链接文件:添加现有文件>>链接文件而不是添加(按钮下拉菜单)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.