【问题标题】:Merge changes to all child branches in TFS 2010合并对 ​​TFS 2010 中所有子分支的更改
【发布时间】:2013-10-21 20:48:43
【问题描述】:

我有基础分支,3 个子分支,每个分支都有 3 个分支,总共有 12 个子分支。

我刚刚对要合并到所有 12 个子分支的基础分支进行了更改。是否可以一次将更改合并到所有子分支?还是我必须单独合并它们?

【问题讨论】:

    标签: tfs


    【解决方案1】:

    您可以对从base 到子分支的变更集执行三次合并操作。但是您还需要毫无根据地将 base 的更改合并到孙分支。

    我不知道如果您尝试将带有签入的变更集合并到 12 个分支中会发生什么。

    就个人而言,我只是硬着头皮将其合并到层次结构中的每个分支。这样做的好处是可以轻松跟踪单个更改、处理冲突并且不需要任何毫无根据的合并。

    【讨论】:

    • 我会考虑将毫无根据的合并作为未来简化流程的一个选项。听起来那里可能有一些危险。我最终只是将它们全部合并到层次结构中。真的只用了5分钟,我只是想知道是否有更有效的方法。
    • 您绝对不应该为此使用无根据的合并,删除和重命名可能无法正确合并,而且在以后的合并中可能会导致问题。
    【解决方案2】:

    之前也遇到过类似的情况。我采用的一个简单解决方案是编写一个小的 shell 脚本,使该过程稍微自动化。下面是一个示例:

    @echo Merge - Product ABC
    @"%VS100COMNTOOLS%..\IDE\tf.exe" merge /recursive "Base\CORE" "$/.../tfs/path/to/ABC"
    
    @echo Merge - Product XYZ
    @"%VS100COMNTOOLS%..\IDE\tf.exe" merge /recursive "Base\CORE" "$/.../tfs/path/to/XYZ"
    
    @echo Merge - Product 123
    @"%VS100COMNTOOLS%..\IDE\tf.exe" merge /recursive "Base\CORE" "$/.../tfs/path/to/123"
    

    这种方法存在明显的缺陷,但如果您发现自己将相同的共享库合并到许多子分支,这至少可以加快流程。

    脚本执行后,您可以简单地检查所有内容(如果都在同一屋檐下,则批量检查)。

    另外,如果您复制脚本并交换 src 和 dst 路径,那么这基本上可以将子分支中所做的所有更改向后集成回主库;)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-04-29
      • 2012-01-02
      • 2010-11-22
      • 2014-11-26
      • 2012-01-15
      • 2020-01-08
      • 2011-04-03
      • 1970-01-01
      相关资源
      最近更新 更多