繁体   English   中英

TFS分支-2个开发分支

[英]TFS Branching - 2 Development branches

我目前使用TFS,并且具有以下结构。

我的TFS层次结构中的Dev行,Mainline和Release行。 我使用以下链接中详述的相同方法:

http://blog.tfsserver.com/a-straightforward-guide-to-branching/

(我计划在发布行中保留2或3个最新版本)

主线是代码的最新版本,并且将创建一个新的发行文件夹,以保留测试和批准主线代码的时间。

当前在我的开发人员行中,我有一个从分支创建的dev分支。

可以说,开发人员目前正在开发这个现有的dev分支,该更改将在4周内准备就绪。

我目前需要对生产中的当前代码版本(主线)进行紧急更改,并且我知道这些更改将需要2周的时间来完成和测试。

考虑到这一点,我显然不想使用现有的dev分支。

我无法直接在主线上进行更改,所以我想知道我考虑的以下方法是否正确?

我想我需要:

(1)从主线创建一个NEW Dev分支。 然后,我将拥有原来的/现有的dev分支,现在拥有一个NEW dev分支。 两者都将从相同的原始代码中分支出来。

(2)在NEW dev分支中进行更改

(3)对变更感到满意后,便可以将变更与Mainline合并,并将变更发布到生产(或选定的客户),然后将变更与原始Dev分支合并。 然后,当原始的dev分支变更在我的两周后完成时,它将与主线合并。

我想知道这是正确的方法吗? 即使我没有从现有/原始dev分支创建新分支,我也可以合并从NEW分支到现有dev分支的更改吗?

谢谢

如果从发行分支分支,则可以将这些更改合并回去,而与其他分支无关。 他们也可以合并更改,但是如果您都在同一个文件上工作,则可能必须经过合并冲突解决步骤。

当您将更改合并到Mainline中时,dev分支可以将更改从Mainline向下合并到其代码中。

另一个选择是,如果您还不想签入对主线的更改...如果您使用的是Visual Studio和TFS的最新版本,则可以使用架子集在分支之间合并代码。 但是,只有最新版本的VS / TFS才会在Unshelving上合并Shelveset。 以前,它只是复制您可能进行的任何更改而搁置的文件版本。

您可能需要查看以下方法。

结构体

在此处输入图片说明

主要

包含主要的源代码树。 最新开发版本。

测试

从Main分支出来,用于隔离测试。

发展历程

从Main分支出来,用于隔离主动开发。

生产

从Main分支,包含您当前在发布之前锁定的发布候选版本。 您在该分支机构工作,以准备发布软件,而其他部门则继续在Development分支机构工作,以开发新功能。

保养

此文件夹包含您已经发货但现在需要为客户维护的分支。 您可以使用它来执行维护工作。 发行软件后,立即创建一个Maintenance *文件夹并将Production分支移入其中。 使用标签标记可能要返回的预维护版本。

安全

此文件夹包含您不再维护的分支。 如果发行版不再符合更新资格,则可以将其从维护容器移至安全容器。

阶段

在此处输入图片说明

功能部件各自在单独的分支中工作。 当团队准备好整合工作时,他们会将分支合并到Development分支中。

当Development分支的构建稳定并准备好进行测试时,团队将Development分支合并到Test分支。

QA接受构建后,团队将Test分支合并到Main分支,并从Main分支创建Production分支,让外部试点用户使用它。

一旦完成,团队将生产分支移至维护容器下,与此版本相关的任何进一步维护将在该分支下完成。

如果发布将不再接受维护,则团队将分支从维护转移到安全容器。

你下维护容器分公司的作品中 总是确保你贴上标签

在此处输入图片说明

取自TFS分支与合并

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM