【问题标题】:merge /discard reports 'No Pending Changes' when /candidate shows them当 /candidate 显示它们时,合并 /discard 报告“没有待处理的更改”
【发布时间】:2014-04-03 18:40:37
【问题描述】:

我正在尝试运行 merge /discard 命令 (tfs merge /discard /version:nnn:yyy $/sourceproj $/targetproj /recursive),但它说没有待处理的更改。

如果我运行 tfs merge /candidate $/sourceproj $/targetproj,它会将相关变更集显示为候选。

任何想法为什么会发生这种情况以及如何解决它?

谢谢。

【问题讨论】:

    标签: tfs branching-and-merging


    【解决方案1】:

    如果您知道确切的变更集编号,请尝试:

    tf merge /discard /version:C111~C111 BranchX BranchY /recursive

    这假设您知道变更集编号(在本例中为 111)。

    如果这不起作用,那么您能否更新您的问题以提供您输入的确切值以及候选检查的输出?

    【讨论】:

    • 嗨,确切的命令是: tf merge /discard /version:26355~32983 $/systems/dev/translations $/systems/test/Translations /recursive 候选命令的输出很大但是包含上述列表以及范围的任意一侧。
    • 尝试使用 C 的前言: tf merge /discard /version:C26355~C32983 $/systems/dev/translations $/systems/test/Translations /recursive 我也会尝试只使用一个变更集的范围来验证你至少可以这样做,所以尝试,在做了我刚才建议的假设它不起作用之后,tf merge /discard /version:C26355~C26355 $/systems/dev/translations $/systems/test/翻译/递归
    • 感谢您的信息。使用 C 前言进行范围是有效的,但一次只能处理一个变更集。我绝对有责任这样做,所以单独做这些并不是一个真正的选择。很奇怪。
    • 我的猜测是,如果实际上您无法使其与 C26355~C32983 一起使用,并且您确信您拥有所有可用的变更集,那么范围之间的变更集之一会存在问题.如果您尝试同步两个分支,另一种选择是进行毫无根据的丢弃合并,假设它是主要场景的开发。我需要更多地了解您的方案,但是是的,您不能使用版本范围而您可以使用一个版本似乎很奇怪。
    【解决方案2】:

    您可能隐藏/未映射一些受合并候选者影响的目标路径。由于没有可以检出合并的文件,这些文件将被忽略,从而导致奇怪的行为。 考虑这个结构:

    /branch-A
       /SomeFolder
       /OtherFolder
    /branch-Main
       /SomeFolder
       /OtherFolder [CLOAKED]
    

    当变更集包含/branch-A/SomeFolder/branch-A/OtherFolder 并且您尝试在此工作区中从分支-A 合并到分支-Main 时,只会合并SomeFolder,从而导致变更集的部分合并并因此出现再次作为候选人。在您将/branch-Main/OtherFolder 映射到您的工作区之前,您将永远无法合并(或合并/放弃)OtherFolder 的更改。

    顺便说一句:在合并时,通常只有合并 TARGET 路径必须映射到工作空间中,因此您可以在上面的示例工作空间中很好地将 /branch-Main/OtherFolder 合并到 /branch-A/OtherFolder

    【讨论】:

    • 请问,您能否提出解决“隐藏文件夹”问题的解决方法?
    • @constructor 抱歉,似乎没有一个好的解决方案。我的是有第二个工作区,它只映射完整的 target 分支而没有任何隐藏,并使用该分支进行合并。同时,我们切换到 git :)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-03
    • 1970-01-01
    • 2018-07-08
    • 1970-01-01
    相关资源
    最近更新 更多