在Visual Studio Team Services上构建特定的分支

13

我在VS Team Services中有一个存储库,其设置如下:

-root
 |
 | -Dev (.sln)
 |
 | -Releases
     |
     | - Test (.sln)
     | - Live (.sln)
每个构建都正常工作,但它正在拉取整个仓库,而我只想要拉取特定的分支(Dev、Test或Live)。所以我正在选择dev分支中的Solution.sln文件... VSO屏幕截图

你说的 VSO 是指 xxx.visualstudio.com 服务吗?只需进入“构建定义->编辑->存储库”,然后设置“默认分支”即可。 - stijn
我找不到那个选项。 - MiloTheGreat
1
@stijn 这对于 Git 是可行的,但不适用于 TFVC - jessehouwing
1个回答

14
在“存储库”选项卡中,您可以指定工作区映射。默认映射会获取您的整个存储库,但不包括“$/project/drops”文件夹。通过将第一个映射更改为不包含“$/Project”,而是使用“$/project/dev”,您将限制获取操作的范围。如果您不再获取团队项目的根目录,则可以取消“drop”文件夹的遮蔽,否则只会引发警告:

enter image description here

如果您正在设置此构建为CI构建,则下一步是在“触发器”选项卡上指定将触发此构建的文件夹,因为默认情况下,CI构建将在整个团队项目中的任何更改上触发。

enter image description here

为了让您的构建定义作为模板保留,我建议使用$(Build.SourcesDirectory)\MySolution.sln代替$/project/dev/Mysolution.sln,这样只需在克隆到另一个分支根目录或将其保存为模板后更新构建定义的映射即可。

enter image description here


1
谢谢你的解释,这真的解释了很多。 - MiloTheGreat
我认为我正在找到一个根本原因......我的sln文件没有被拉到构建代理。我已经查看了VSOwork文件夹,一切都在那里,但是sln文件却不在......“无法找到路径'F:\ vsowork \ 1 \ s \ xxxxx.sln',因为它不存在。”我也尝试了你上面的方法,是正确的。 - MiloTheGreat
你能分享一下源代码控制资源管理器的截图,以展示dev文件夹中有哪些文件吗?还有你的构建定义映射的截图呢? - jessehouwing

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接