签入时从 TFS (Team Foundation Server) 更新 AssemblyInfo.cs 版本

Update AssemblyInfo.cs version from TFS (Team Foundation Server) when Checking in

如标题所说。 有没有办法从 TFS 中获取一个值,比如 "Build Value",我可以在 "Team Explorer" 中单击 "Check In" 后在 visual studio Forms Application 中实现?

找到了这样的东西:https://archive.codeplex.com/?p=tfsversioning 不过工程量太大了

假设您使用的是 vNext 构建系统(TFS 2015 及更高版本),那么您可以通过 CI(持续集成)构建来实现。

  1. 在 TFS
  2. 上安装扩展 Update AssemblyInfo
  3. 创建构建定义并启用 Continuous Integration,添加 任务Update AssemblyInfo
  4. 使用预定义变量Build.BuildNumber获取构建 编号并将内部版本号设置为文件版本
  5. 复制以下命令并另存为PowerShell/cmd脚本,然后添加 PowerShell/Command任务作为最后一个任务到运行脚本到 检查更改。参见 Checkin command

    tf Checkin $source_dir /comment:"Updated AssemblyInfo.cs version" /noprompt /force /bypass /override:"bypass checkin policies"
    

因此,一旦您签入更改,构建定义就会被触发,AssemblyInfo.cs 版本将使用构建号自动更新,更新后的 AssemblyInfo.cs 文件将在构建完成后被签入.

参考以下线程: