在TFS 2015中设置新项目和分支机构设计。这个细节可能很重要 - 我将它用于PowerBuilder项目,而不是.NET - VS2015用于设置分支和执行合并,文件本身将在PowerBuilder中检入和检出。我可以看到,不应该有所作为,但如果我错过了某些内容,请提及它
使用以下示例布局:
Prod分支到/从Mod转到Dev。来自Prod的新CO项目分支(因此它们始终以一组新的最新实时代码开始),然后合并(通过无基础合并)到DEV分支,并在建立连接后重新设置父级。这样用户就不必记住进行毫无根据的合并; Dev将成为默认的合并目标
合并他们会从Dev回到Mod,然后再回到Prod问题在于,作为测试,我在分支之后尝试了无基础合并,期望没有文件被合并,因为在任何分支中没有任何变化。但是从CO分支到Dev的合并合并了所有文件。现在不是问题,因为没有任何变化,但是当几个项目合并到DEV后会出现问题。
在合并之后,我对项目进行了一些小改动并尝试合并;只合并了一个已更改的文件。
我最好的猜测是,因为新的CO分支是在Dev Branch之后创建的,所以它被认为是其中的所有内容都比Dev分支更新,所以它翻过了所有内容。不确定如何处理Dev中没有出现的Dev变化,还没有测试过这种情况。它应该至少告诉我我需要合并的变化,但我担心它可能只是用#34; new" CO分支中的文件。
问题是,我怎样才能/告诉系统这个新分支是"而不是更新"比起Dev分支?事实上,这些是PowerBuilder文件在某种程度上限制了TFS以某种方式识别版本控制的能力吗?
或者更简单的说,分支布局是不是最好的方法?
编辑 - 这是我目前用于.NET项目的结构 - 我试图使用上面的布局代替新代码。
它使用" Main"分支机构在下面的评论中提出了这个问题,但是因为我正在推动" CO Branches"来自Dev,我得到的代码目前正在测试,而不是pristine Prod代码。我假设在这种布局中尝试分支并从Prod重新父级将导致相同的情况。
这是更好的方法吗?
答案 0 :(得分:0)
您可能有一个Main分支,它是开发和发布分支之间的联结分支,代表产品的稳定快照。
当Dev分支上的工作完成后,你可以从Main分支到Dev,Mod和Prod,从Dev合并到Main,当你想要发布产品时,从Main合并到Prod。因此,当您想从最新的实时代码分支时,您可以从Main分支。通过这种方式,您可以从CO合并到Main,然后从Main合并到Dev或Main到Prod。所有变更集都将被保留。