MSBuild包括远程文件2008?

时间:2010-04-07 19:25:50

标签: msbuild include tfs2008

2008年TFS,VS 2008。 我在$ / MyStuff / TeamBuildTypes / Dev文件夹中有一个tfsbuild.proj和tfsbuild.msp文件。 我在$ / MyStuff / TeamBuildTypes / IncludeFiles / Common / test.xml中有一个目标文件。 test.xml包含一个覆盖BeforeGet任务的XML片段。

我试着将文件放到我的tfsbuild.proj文件中,如下所示:

<Import Project="$/MyStuff/TeamBuildTypes/IncludeFiles/Common/test.xml" />

构建失败,因为它试图从相对路径中获取文件。

我已经改变了一点,现在正在尝试执行Exec任务,将文件从TFS转移到本地文件系统。

<Exec WorkingDirectory="$(SolutionRoot)" Command="&quot;$(TF)&quot; get &quot;$/MyStuff/TeamBuildTypes/IncludeFiles/Common/test.xml&quot; /version:W$(WorkSpaceName) /overwrite /force /noprompt /recursive" IgnoreExitCode="true" />

我不知道该文件的去向。我没有收到错误。我可以访问$(SolutionRoot)变量,但TeamBuildTypes文件夹位于文件系统中的那个文件夹之上。如何访问此文件并将其用作当前构建的任务的覆盖?

帮助?

谢谢!

1 个答案:

答案 0 :(得分:1)

这不是一条“偏远”的道路。这是进入TFS源代码控制的途径。它只能由TFS理解。

MSBUILD不是TFS的一部分 - 它是.NET SDK的一部分。它只能理解所有程序都能理解的路径类型。

您必须将此文件从源代码控制中提取到构建计算机上,并使用指向它的路径引用它。