2

目前,据我所知,如果您有两个分支,则必须将两个分支都映射到您机器上的位置,Visual Studio(或 Visual Studio 中的 TFS)将下载最新版本并在本地合并更改,然后您必须检查另一个分支。我希望能够将此分支与此分支合并,并且只有一个分支在本地映射?

这样做的目的是我们有一个开发分支、一个测试分支和一个发布分支,我们将开发分支中的更改合并到测试分支中,并将其构建在服务器上,然后将其部署到另一台服务器上。所有这一切都很好,但是测试(和发布)分支必须映射到任何试图这样做的人的机器上,否则它将无法工作。

理想情况下,我希望能够登录到 Visual Studio Online 并在那里而不是在我的开发机器上进行所有的合并、构建和部署——这有可能吗?如果是这样,请问如何?

4

1 回答 1

1

实际上,不完全确定这是 TFS 产品支持的东西。每当发生冲突时,合并往往需要至少少量的人工交互(即使在最干净的合并关系中,冲突也可能而且确实会出现)。

但是,如果您愿意,可以在构建机器上执行此操作,方法是在构建发生之前执行合并,如果构建成功,则检查合并的变更集。

在 TFS 构建中使用构建前和构建后脚本功能,您可以尝试执行以下操作...

预构建脚本将包括以下命令:

tf merge $/ProjectRoot/Branches/Dev $/ProjectRoot/Branches/Test
tf resolve $/ProjectRoot/Branches/Test /r /i /auto:TakeTheirs

构建后脚本将包括:

tf checkin $/ProjectRoot/Branches/Test /r /i /comment:"***NO_CI*** [AutoMerge]"
于 2014-11-21T23:35:25.513 回答