目前我们有这样的分支结构:开发-->发布。我想改变它,使它看起来像TFS 分支指导文件称为“基本分支机构计划”。看起来像这样 Develop Release。
我本来打算这样做:
- 将 Develop 重命名为 Main(创建 Main --> Release)
- 从此 Main 重用“Develop”名称创建分支(创建 Develop Release)
TFS 为新分支重用旧分支名称时会遇到问题吗?知道有什么陷阱或需要注意的事情吗?
附加信息我在一个测试实例中执行了此操作,创建了没有任何文件、挂起的更改、历史记录等的测试分支(这不是一个好的选择)realtest)和 TFS 让我可以毫无困难地进行重命名和分支。但是,除非我可以获取我们的生产 TFS 项目集合,在测试实例中恢复它,并在真实数据上测试重命名/分支,否则我对此感到不舒服。那里有很多历史和分支,我不知道会发生什么。正如答案中所述,在执行此操作之前还有其他考虑因素。
我正准备执行类似的步骤(除了我要移动父级和子级的子文件夹位置,而孙子级则保持不变。)
问题:
- 计划什么时候改名?
- Develop 分支下是否还有您未提及的子分支?
- 您是否有任何针对 Develop 的搁置集可能会受到重命名的影响?
一般回答:谨慎行事。根据我的阅读,TFS2010 中的分支重命名可能会导致一些意想不到的副作用。 TFS 将针对您的场景执行以下步骤(在幕后):
- 将 Develop 重命名为 Main ==> Branch 将 Main 分支从 Develop 中删除,然后删除 Develop 分支
- 从 Main 创建新的“开发”分支
我建议阅读以下帖子:
在 TFS 2010 中重命名分支(ChandruR 的博客)
“MSDN 博客 > ChandruR 的博客 > 重命名 TFS 2010 中的分支
所以我对这个案例的建议是:
- 避免重命名分支 - 更干净的解决方案是在发布中的正确位置将所有更改合并到父分支,然后重新分支以创建新的分支层次结构。
或者对于勇敢的心:)
- 您需要安排分支重命名的时间,以便在版本中可以合并到所有相关分支。要遵循的步骤是:
……”
在 TFS2010 中重命名分支 - 但它可以在我的电脑上运行!
“在 TFS 2010 中,重命名实际上是一个分支和删除过程,这意味着我们最终得到了新分支,但同时也删除了旧名称的分支。除非您启用了“在源代码管理资源管理器中显示已删除的项目”,否则这并不明显......”
“现在在幕后实现为分支+删除(新名称从旧名称分支,然后删除旧名称)。这允许历史记录中的可追溯性,但允许我们解决合并重命名的问题(请参阅添加、重命名) ,添加场景)。”
.
随意的想法
- 让所有开发人员合并(或放弃)Dev 子分支中的所有安全更改。还要在重命名之前修剪所有不活动的分支。
- 阅读以上文章。
- 搜索找到一个页面(我还没有找到),该页面根据真实经验用更简单的术语准确描述了将会发生的情况。
具体来说,我想知道 Develop 分支上的搁置集在重命名为 Main 后会发生什么情况。 (下一步可以回答这个问题。)
- 您可以考虑制作一个“沙盒”团队项目(或团队项目集合),然后尝试您的场景以查看是否存在重大问题。
- 选择正确的时机(参见链接#1)并全力以赴。
- 检查历史记录,在重命名的分支之间进行合并,再次检查历史记录。
- 允许开发人员回归。
祝你好运,并回复任何新信息(包括你的最终结果)! -zs
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)