如何在VS2010中管理版本?

时间:2011-02-12 20:35:40

标签: c# .net winforms visual-studio visual-studio-2010

例如,在我构建Release版本之后,我希望将其名称更改为(例如) MyApp-1.2.exe 。在构建下一个版本后,我希望将exe命名为 MyApp-1.3.exe 。我仍然希望能够运行 MyApp-1.2.exe

我宁愿不使用任何外部工具(我知道有nAnt和nMaven)并在VS中执行。如果它不可能比我打赌nAnt对我来说是更好的选择。

2 个答案:

答案 0 :(得分:4)

您也可以在GetAssemblyIdentity任务的帮助下通过MSBuild执行此操作:

<GetAssemblyIdentity
  AssemblyFiles="$(MSBuildProjectDirectory)\src\MyApp\bin\MyApp.exe">
  <Output
    TaskParameter="Assemblies"
    ItemName="AssemblyIdentities"/>
</GetAssemblyIdentity>

然后重命名.exe文件:

<Copy 
    SourceFiles="$(MSBuildProjectDirectory)\src\MyApp\bin\MyApp.exe" 
    DestinationFiles="$(MSBuildProjectDirectory)\src\MyApp\bin\MyApp-(AssemblyIdentities.Version).exe"></Copy>
<Delete
    Files="$(MSBuildProjectDirectory)\src\MyApp\bin\MyApp.exe"></Delete>

答案 1 :(得分:2)

如果您真的想在VS中执行此操作,则可以(再次)使用构建后命令功能(来自Project properties - &gt; Build Events)执行此操作

运行将copy文件的脚本或批处理文件,然后重命名该文件。我曾经在几年前根据当前日期(不是版本)做到这一点(甚至不确定为什么)。

如果您可以创建批处理文件或脚本,则可以在构建事件中执行几乎任何操作。

使用构建系统是恕我直言,而不是这种方法。