msbuild和文件版本更改

时间:2017-09-07 20:21:39

标签: .net git jenkins msbuild continuous-integration

我正在尝试在我的.net项目中使用Jenkins和git进行以下构建方案,这些方案都在abc解决方案中:

  1. 从git中提取更改。
  2. 构建解决方案,只构建拉动时更新的项目以及依赖项。
  3. 构建命令应该使用特定的程序集版本构建这些项目及其依赖项。例如:1.2.3.4
  4. 构建的项目的每个assemblyinfo.cs应更改为
  5. [assembly: AssemblyVersion("1.2.3.4")]
    [assembly: AssemblyFileVersion("1.2.3.4")]
    

    对于第3步和第4步的好方法有什么想法吗? 我试图运行这个命令行,但它没有给我我想要的结果。

    msbuild.exe abc.sln /p:Configuration=Release;VersionAssembly=1.2.3.4
    

    感谢您的善意答案。 感谢

1 个答案:

答案 0 :(得分:1)

使用MSBuild.Community.Tasks并将以下内容添加到*.csproj项目文件中:

<Import Project=".\tasks\MSBuild.Community.Tasks.Targets"/>

<AssemblyInfo CodeLanguage="CS"  
    OutputFile="AssemblyInfo.cs" 
    AssemblyVersion="$(BUILD_NUMBER)" 
    AssemblyFileVersion="$(BUILD_NUMBER)" />

运行msbuild并将所需的内部版本号作为参数传递:

msbuild abc.sln /p:BUILD_NUMBER=1.2.3.4