【问题标题】:TFS Branching or Moving Under Source ItemTFS 分支或在源项下移动
【发布时间】:2014-08-21 19:04:17
【问题描述】:

我有一个 Team Foundation Server 2013 代码结构,如下所示...

$/TeamProject/Application/AllTheCodeFiles

...但我想重构有...

$/TeamProject/Application/Trunk/AllTheCodeFiles

这将允许我通过创建与“主干”相同级别的“发布”分支来实施分支和合并策略。

如果我尝试将应用程序目录分支或移动到主干,我会收到错误消息:

目标项 $/TeamProject/Application/Trunk 不能位于源项 $/TeamProject/Application 下。

所以,这是我遵循的过程,感觉不对,我猜有一种更有效的方法。

  1. $/TeamProject/Application 重命名为$/TeamProject/Application-trunk
  2. 新建$/TeamProject/Application目录
  3. $/TeamProject/Application-trunk 移动到$/TeamProject/Application/Trunk

执行此操作后,历史记录与$/TeamProject/Application 相关联,而不是$/TeamProject/Application/Trunk。我的问题是,了解更多的人会以什么方式做到这一点?

【问题讨论】:

    标签: tfs branching-strategy


    【解决方案1】:

    我刚刚完成了我将在我的测试 TFVC 上执行的操作,并且版本历史记录看起来还不错。

    步骤如下:

    1. $/TeamProject/Application/开头
    2. $/TeamProject/Application/Main/ 创建一个文件夹(TFVC 约定 - 中继是 SVN)
    3. 签入待处理的更改。
    4. 将所有文件和文件夹从$/TeamProject/Application/ 移动到$/TeamProject/Application/Main/
    5. 签入待处理的更改。
    6. $/TeamProject/Application/Main/ 转换为分支。

    这是在移动 (C62) 之前添加 (C58) 和编辑 (C59) 并在移动之后编辑 (C63) 的文件的历史记录:

    【讨论】:

    • 戴夫,非常感谢。我遵循了这个过程,并且能够按照您的指示查看单个文件的历史记录。不过,我现在无法做的是通过变更集创建从 $/TeamProject/Application/Main 到 $/TeamProject/Application/Release 的分支。如果我尝试这样做,我可以从 $/TeamProject/Application/Main 中选择的唯一变更集是此过程中的两个提交(添加 main 并移至 main)。
    • 这是有道理的,因为在“移动”变更集 (C62) 之前,没有 $/TeamProject/Application/Main。
    • 嗨,戴夫,有解决方法吗?我正在旧代码库中实现分支,我需要在创建 Main 分支之前从几十个变更集中创建一个分支。从顶层分支是不可能的,所以我想我必须下载我想要的版本并将其作为发布分支的第一个变更集提交 - 丢失所有历史记录?有没有其他办法?
    猜你喜欢
    • 1970-01-01
    • 2021-02-03
    • 2014-10-20
    • 2012-06-20
    • 1970-01-01
    • 2020-03-03
    • 2018-01-14
    • 1970-01-01
    • 2019-03-29
    相关资源
    最近更新 更多