无法在Team Foundation Build中检出文件

时间:2013-05-21 20:45:12

标签: tfsbuild tfs2012

我正在尝试使用tfsbuild和visual studio 2012构建各种csproj文件。我已经使用适当的进程创建了一个构建定义来构建三个不同的csproj文件。每个csproj文件都有prebuild和postbuild事件,大多数是简单的删除和复制命令。只需这些步骤,构建就可以很好地完成。 现在我想在构建之前添加命令以使文件从tfs中检出,并在构建之后重新检入。我已经为prebuild和postbuild事件添加了正确的VS命令行命令

结帐:

“$(DevEnvDir)tf”checkout / lock:none“$(Pathname)$(ConfigurationName)\ $(TargetFileName)”

签:

“$(DevEnvDir)tf”checkin“$(Pathname)$(ConfigurationName)\ $(TargetName)。*”/ noprompt / force / comment:“Build check-in”

但是现在当我尝试构建时,我得到一个返回的错误,如下所示:

$ / AiFramework / toolbox / Accelitec.Utility / Accelitec.Utility.csproj - 1个错误,0个警告,查看日志文件  C:\ Windows \ Microsoft.NET \ Framework64 \ v4.0.30319 \ Microsoft.Common.targets(1063):命令“”C:\ Program Files(x86)\ Microsoft Visual Studio 11.0 \ Common7 \ IDE \ tf“checkout / lock:none“\ AiDevelopment \ AiFramework \ bin \ Debug \ Accelitec.Utility.dll”“退出,代码为100。

错误报告提供的关于出错的信息不多。 有趣的是,当我在本地和单独构建文件时,即使使用checkout / in命令,文件也会构建,甚至可以进行正确的结帐。

我的想法(用团队服务器上的命令行进行备份)是因为它与工作空间有关,特别是检查文件所需的工作空间,但除此之外,我迷失了哪里继续

2 个答案:

答案 0 :(得分:0)

我建议您远离构建后事件,而是修改工作流程。至少,使用MSBUILD,而不是后期构建事件。

答案 1 :(得分:0)

  

同时验证工作区。

前段时间我遇到了同样的问题。发生的事情是多个地图到不同工作区的同一目的地。

清理drop文件夹并使用以下参数请求新版本:

/p:OverrideForceGet=true;OverrideSkipInitializeWorkspace=false