2013-10-14 42 views
1

我有一个问题,我想与您分享并寻求建议。TFS构建 - 通过标签问题获取源代码

比方说,我有一个项目在TFS与源代码文件夹和文件夹与部署脚本。文件夹结构:

- TFS

----项目

-------- DEPLOYMENTSCRIPTS

-------- SOURCE

DeploymentScripts文件夹是由TFS构建过程执行的自定义部署脚本的容器。

来源 - 是一个源代码文件夹,其中为每个新版本创建一个标签以便稍后用于部署。

我有一个生成定义配置为从两个文件夹需要的文件,因此,我希望TFS将每次下载两个文件夹的内容我触发构建:

build definition - source settings

这完美的作品时, TFS构建需要最新版本:它需要一切,构建和部署。

的问题似乎一旦配置了采取什么样的标签:

build definition - label

TFS下载只有来源文件夹忽略DeploymentScripts内容。我想这是因为我们只使用标签文件夹,而不是DeploymetScripts(此文件夹的内容是静态的,没有任何更改)。我知道,如果我使DeploymentScripts子文件夹来源,这将解决我的问题,但我想保持它分开(例如,如果我以后创建一堆分支文件夹,我不想复制部署到每个特定的文件夹,我想作为一个实例),并试图找到这种情况下的解决方案。

回答

0

如果我遇到一个团队这样做,我的第一个问题是他们为什么需要使用标签来完成他们之后的任何工作流程。这是一种不寻常的做法,大多数团队只是做一个Get Latest,并使用适当的分支策略来实现他们想要的工作流程。

如果您必须使用Label,则一个选项是将DeploymentScripts包含在标签中。您可以通过编辑标签而无需在源代码管理中移动文件夹位置。

+1

当我们为发布创建新分支并执行稳定化和错误修复时,我们发现标签很有用。我会检查是否可以将文件夹添加到标签,这将解决我的问题。谢谢! – mlurker

1

可以在根级应用您的标签,或者使用日期或变更集号开始构建。

另一种方法是使用分支而不是标签,并设置您的构建以允许您传入要构建的分支的名称。

我不再使用标签,我想不出他们最近对我有用的情况。

+1

当我们为发布创建新分支并执行稳定和错误修复时,我们发现标签很有用。 – mlurker

+0

我们使用发布分支,但使用分支本身作为“标签”。我猜如果bug UI更好,我们可以使用标签填写“找到的地方”字段,但不幸的是,我们的下拉字段中有一个混合项目,因此填充时间太耗时。我们只需在对于重要/有用信息的少数情况,repro步骤。 –