我目前正在尝试为我的构建的 AfterBuild 事件添加一组命令。命令如下
- ..\Binaries\Latest\$(ConfigurationName)\ 中的签出文件
- 将构建输出复制到 ..\Binaries\Latest\$(ConfigurationName)\
- 将文件签入到 ..\Binaries\Latest\$(ConfigurationName)\
我的项目文件中定义的部分看起来像
<Target Name="AfterBuild">
<PropertyGroup>
<TF>"$(VS100COMNTOOLS)..\IDE\tf.exe"</TF>
</PropertyGroup>
<!-- include the Challenges dll and config -->
<ItemGroup>
<UtilityDLLs Include="$(OutDir)\*.*" />
</ItemGroup>
<!-- Automticly checkout files -->
<Exec Condition=" '$(BuildingInsideVisualStudio)' == 'false' " Command="$(TF) checkout /noprompt /recursive $(SolutionDir)..\Binaries\Latest\$(ConfigurationName)\">
</Exec>
<!-- copy the file to features build output-->
<Copy Condition=" '$(BuildingInsideVisualStudio)' == 'false' " ContinueOnError="true" OverwriteReadOnlyFiles="true" SourceFiles="@(UtilityDLLs)" DestinationFolder="$(SolutionDir)..\Binaries\Latest\$(ConfigurationName)\" />
<!-- Automatically checkin files -->
<Exec Condition=" '$(BuildingInsideVisualStudio)' == 'false' " Command="$(TF) checkin /noprompt /recursive /comment:"COMMENT HERE" $(SolutionDir)..\Binaries\Latest\$(ConfigurationName)\">
</Exec>
</Target>
在我的最后一个命令中,您将看到 /comment 选项:“COMMENT HERE”
我想将“COMMENT HERE”替换为 MSBUILD 或 TFS 属性,该属性包含进行初始签入的开发人员的评论。这是一个选项吗?如果是这样,我该如何做到这一点?
我在Common MSBuild Project Properties中没有找到
细化
在不透露太多信息的情况下,让我详细说明我要完成的工作。我们的 TFS 结构基本上是这样布置的
- 主干核心
- 图书馆1
- 图书馆2
- 图书馆3
- 主干网
- 核心二进制文件
- 中继API
- 核心二进制文件
当开发人员签入对 /trunkCore/Library# 的更改时,构建开始,生成的二进制文件会自动签入 /trunkWeb/CoreBinaries 和 /trunkAPI/CoreBinaries。签入是我在 Library1、Library2 和 Library3 csproj 文件中定义的 AfterBuild 配置设置的结果(如上所示)。
初始代码签入和二进制文件签入是两个单独的签入。我想在自动签入的签入说明中引用原始代码签入的注释,而不是使用一些固定文本,例如“二进制文件的自动签入”。在查看 CoreBinaries 目录中的二进制文件历史记录时,这样做会更加清晰。这不是必须的,但绝对会很好。