问题标签 [tfsbuild]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
3253 浏览

visual-studio - 团队建设现在非常缓慢

我们在实施 Team Foundation Build Server 时遇到了性能问题,我对如何加快速度没有任何想法。我们已经添加了一些 PropertyGroup 元素来提高几个步骤的性能(SkipClean、SkipLabel、SkipInitializeWorkspace),但我认为我们需要进行重大重组来解决问题。这是我们的设置:

  • 我们有大约 40 个 Web 应用程序,每个应用程序都非常不同,但运行的是一堆共享程序集
  • 这些 Web 应用程序中的每一个都有自己的解决方案;
  • 这些 Web 应用程序中的每一个都引用了大约 10 到 25 个共享程序集;
  • 存在一个构建定义,其中包含在每次签入主干时触发的所有解决方案;

这是我们遇到的基本问题

  • 在构建期间,它将构建每个共享程序集的引用次数,而不是构建一次并为每个应用程序使用
  • 放置目录的文件复制时间非常慢。它必须通过网络共享并且不会采用本地路径。
  • 每隔这么多构建,一个或多个输出文件就会“锁定”并导致构建中断,即使编译正常。
  • 还有一件事——我也尝试过单独的构建定义,但这样做也会强制在获取最新版本上获取另一个工作区。我更希望构建服务器包含一个版本的主干来构建。

在过去的几个月里,我们已经屈服于嗜睡并忽略了这个问题,但现在构建时间是一个多小时到一个半小时。

我正在玩弄学习和切换到巡航控制的想法,以获得更好的控制。有人不同意吗?

非常感谢任何帮助。谢谢!

0 投票
3 回答
1436 浏览

tfs - 我可以覆盖 DropLocation 目标以避免网络延迟吗?

在 Team Build 2008 中,构建的放置位置不再在 .proj 文件中指定,而是存储在数据库中并在 GUI 工具中维护。

GUI 工具只接受网络路径作为放置位置(即\\server\share),不接受本地路径。

我们的构建服务器还托管删除的文件,因此在复制大量文件时,强制文件复制操作通过网络共享似乎会引入很多延迟时间。我想覆盖此功能,以便我可以指定放置位置的本地目录,但我不知道如何。

0 投票
1 回答
908 浏览

msbuild - Team Build MSBuild 任务不更新主构建日志文件

我的主 TFSBuild.proj 文件中有一个构建后事件,它使用 MSBuild 任务在成功构建后调用部署任务。它看起来像这样:

这工作正常,部署脚本被调用,正如你所期望的那样。问题是执行 MSBuild 产生的任何错误或消息都不会写入成功构建后放置在放置位置的 BuildLog.txt 或 ErrorsAndWarnings.txt 文件。

有没有一种简单的方法来捕获这些信息?

0 投票
3 回答
766 浏览

.net - 如何使用 MSBuild 仅构建解决方案中包含的少数项目?

我正在尝试设置 TFS Team Build,并且是 MSBuild 的新手。我有一个包含几个项目(MyProject1、MyProject2、..)的解决方案。我发现设置团队构建时,我只能选择应该构建哪个解决方案,并且在执行构建时,所有项目的构建目标变得相同,并且所有项目的输出都放入构建服务器上的部署文件夹中。

有没有办法让我只构建解决方案的一个或少数几个项目而不构建整个项目,因为我只希望构建其中的一部分?

我可以只使用 MSBuild 构建解决方案文件,还是可以指定要构建的单个项目?

如果可能的话,谁能给我 msbuild 语法?

0 投票
1 回答
1370 浏览

msbuild - MSBuild:如何强制 ProjectReference 在其他地方搜索程序集?

我们有大量包含相同共享 15 个项目的 Visual Studio 解决方案,并且大多数解决方案仅在 Web 应用程序上有所不同。

我正在尝试将所有内容整合到一个仅构建一次共享项目的单一构建中,然后让 Web 应用程序项目引用输出共享程序集。

我发现,由于 web 项目通过 <ProjectReference> 元素指向共享项目,我不能告诉它在我的自定义构建项目中的其他地方寻找程序集。我想使用类似的东西:

<MSBuild Projects="@(Solutions)" Targets="Rebuild" Properties="ReferencePath=$(MyReferencePathFolder)">

但这仅在 Web 项目通过 <Reference> 元素引用共享程序集的 dll 时才有效。似乎如果在 <ProjectReference> 中找不到指向的内容,它不会尝试查看任何 ReferencePath 文件夹。它只是放弃。

0 投票
1 回答
3184 浏览

tfs - 创建一个新的 TFS 团队项目并使用现有的源代码管理文件夹

我目前在 TFS 中有一个包含我所有源代码的源代码控制文件夹。是否可以创建一个的团队项目并使用现有的源代码管理文件夹?

我可以选择创建一个新的源代码管理文件夹、创建一个新分支或根本不创建一个。但是有没有办法使用现有的文件夹?

[编辑]澄清一下:我以前有一个名为 ProjectA 和 $/ProjectA 的团队项目和源代码管理文件夹。如果我删除了团队项目但保留了源代码管理文件夹 $/ProjectA,然后想用新模板重新创建一个名为 ProjectA 的团队项目,我可以重新附加现有的源代码管理文件夹 $/ProjectA 吗?

听起来我可能做不到?

0 投票
1 回答
540 浏览

ms-access - TFS 构建中的 MS Access 项目

我有一个问题要问大家,欢迎提出任何想法。我们的存储库中有很多 MSAccess 数据库项目,开发人员在这些项目上工作并在 Dev Envoirment 中自己进行测试。众所周知,编译数据库项目本身就是一个错误的说法,因为您实际上需要测试您的脚本和报告以及针对数据库的所有其他内容。所以在 MSAccess 项目的情况下,我们可以在 TFS 构建脚本中做什么,我没有想法。任何遇到过这个问题并对此做了一些事情的人,如果你分享,我真的很感激。

任何可以解释如何进行的示例或链接都会更好。请理解它是一个 MS Access 项目。

谢谢鲍勃

0 投票
2 回答
1358 浏览

visual-studio-2008 - 在 Visual Studio 2008 中使用 sql server 2005 数据库项目的最佳实践

在 Visual Studio 2008 中使用“sqlserver 2005 数据库项目”的最佳实践是什么?

我创建了一个项目文件。如何为存储过程、视图和表创建脚本?我将如何生成脚本来填充一些查找数据?

在数据库已经部署到生产环境后,我将如何处理可能需要在生产服务器上运行的修改。(我想我会使用所有更改脚本创建以部署日期命名的文件夹)

有没有办法让 Team Build 拆除并重建数据库以测试所有脚本是否正常工作?

我一直无法在网上找到散步。如果您能指出我正确的方向,将不胜感激。

谢谢

0 投票
6 回答
8030 浏览

tfs - Team Build,复制文件目标问题

我在编译后设置了这个团队构建目标

我想要从源复制到目标的文件夹结构......

令人惊讶的是我收到了这个错误

无法将文件“C:\TFS\NightlyBuild\Sources\Development_VS2008\MyCompanyName.SharePoint.12\”复制到目标文件“c:\testing\”,因为目标是文件夹而不是文件。要将源文件复制到文件夹中,请考虑使用 DestinationFolder 参数而不是 DestinationFiles。

如您所见,我确实在使用destinationfolder 参数,有人知道我做错了什么吗?

0 投票
2 回答
2152 浏览

tfs - 如何在 TFS Team Build 中复制递归目录结构?

是否可以在团队构建目标中复制目录?