TFS:这可能吗?

时间:2010-01-05 16:15:28

标签: tfs msbuild continuous-integration tfsbuild version-control

我们有3个环境:dev,test和staging。

我想检查和退出TFS。当我们进行更改时,我想将代码提升到开发Web服务器。接下来我想推广更改以进行测试,然后进行升级。是否可以使用Team Foundation Server执行此操作?

3 个答案:

答案 0 :(得分:4)

为什么人们建议分支?您可以为发布快照分支不同的功能或静态分支。

这些环境之间的区别当然是配置项/文件和这些环境中的设置。您需要做的就是按顺序完成部署和发布管理过程。

创建适当的MSBuild任务并使用TFSBuild(持续集成)来调用这些任务,以便为正在构建的环境/配置输出正确的配置文件。您可以轻松地将另一个MSBuild目标添加到相应的目标环境中。

答案 1 :(得分:3)

您可以手动签出每个分支的代码,随后对每个分支进行更改,然后签入。 非常小心

更好是让这3个环境成为彼此的分支。 (通常你从dev开始,然后依次分支到另外2个)。然后,您可以使用合并功能直接合并(例如)您的开发更改集以进行测试等。此时,您的测试模块(需要更改为匹配dev)将被检出,变化。然后只需提交更改。然后重复进行分期和冲洗。这是此常见场景的建议方法

两个重要的注释:

  • 即使TFS非常以服务器为中心(例如与SVN相比),这种合并功能也会在客户端上发生。您需要将每个分支映射到您的计算机。合并过程完成后,在您签入之前,您将在目标分支中进行未提交的更改。
  • 在微软的愿景和我在这里给出的例子中,这些分支是永久性的。这是我之前使用SVN的做法的变化,其中整个分支一直在创建/提升/退役。在TFS方式中,您创建了 Test 分支,它仍然是 Test 分支。它永远不会被提升;它的更改合并在其他地方。

建筑是一个单独的行动。你需要为每种情况设置一个单独的构建,当然,一旦你设置了第一个,其他两个将是微不足道的。合并到 staging 后,您将运行暂存 build 。 (从Team Explorer或Build菜单中)。 TFS有点沉重但是一旦设置它就能很好地处理这种情况,分布式团队很容易合并和快速构建(使用自动构建测试等)。

答案 2 :(得分:0)

是的,这是可能的,但您必须从一个分支到另一个分支手动检查它们。