[英]How to update current branch with changes from master using TFS?
我有一个使用 Team Foundation Server (TFS) 进行修订控制的项目代码。 我使用 Visual Studio 2019 从main
创建了一个名为br-feature
的新分支。从那时起,我的main
分支发生了变化。 我想将所有新更改从main
分支拉到当前的br-feature
分支,以确保在我将更改从br-feature
合并到main
之前一切正常。
我没有看到使用 Visual Studio 快进当前分支的选项。 如何使用 TFS 将main
分支中的所有更改拉入br-feature
?
从评论来看,repo 是 TFVC。 TFS 可以托管 TFVC 和 git 存储库。
使用 TFVC:
在 TFVC 中,分支是分层的。 问题描述表明br-feature
是main
的子分支。 从main
(父分支)合并到br-feature
(子分支)应该是直截了当的。
TFVC 是基于文件的,而不是像 git 那样基于快照的。每个文件都有自己的增量链。 TFVC 变更集相当于 git 次提交,但它是文件的一组增量。
因为 TFVC 是基于文件的,所以文件添加和文件删除有些特殊。 为了保持变更集的顺序正确,请始终先将父项合并到子项,然后再将子项合并到父项。 即确保main
中的更改合并到br-feature
并且br-feature
在将br-feature
合并到main
之前与main
保持同步。 “顺序”对于文件添加和删除的解释方式很重要。
通过分支层次结构,自动合并逻辑能够执行三向比较:当前“目标”文件、传入的已更改“源”文件以及两者的共同祖先。 但是分支层次结构可能非常有限。
当您从上下文菜单中选择“合并...”时,“合并”对话框将打开。 您单击的分支将被选择为源分支,您将能够 select 目标分支。 (合并是从“源”到“目标”。)
您要使用的是“特定版本的所有更改”选项。 它将默认为T
,这是最新的修订版(有点像带有 git 的HEAD
)。
(在“合并”对话框中,您会看到有关“合并关系”的语言 - 这意味着分支之间存在父/子关系。您还会看到提及“无基础合并” - 这意味着没有父/子关系。自动合并逻辑不支持无基础合并。如果您执行无基础合并,则所有更改都需要手动合并。)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.