【问题标题】:How are the sub folder's mergeinfo used when merging at top folder level?在顶级文件夹级别合并时如何使用子文件夹的合并信息?
【发布时间】:2013-08-24 08:16:46
【问题描述】:

我们知道,如果在文件夹级别执行合并,TortoiseSVN 会创建svn:mergeinfo 作为文件夹属性。这可能是一个顶级文件夹(例如 trunk)或某个子文件夹。我一直认为在子文件夹级别合并是可以的,因为在顶级文件夹级别合并时将使用子文件夹上的svn:mergeinfo。我认为过去它通常对我也有效,直到今天我看到一个我无法解释的案例。

我在子文件夹级别看到了从 branchtrunk 的合并,我可以在该修订版中看到 的子文件夹上的 svn:mergeinfo 属性后备箱

但是,如果我尝试在顶级文件夹级别再次从 branch 合并到 trunk,则分支处的合并修订不会灰显。如果我尝试合并,它只会合并顶部文件夹中的属性,而无需进行任何代码更改。如果我尝试从该子文件夹合并一个文件夹,则该合并的修订版也不会灰显。

我无法解释我在这里看到了什么。任何人都可以对此有所了解吗?我正在使用最新的 TortoiseSVN 1.8.1。过去我使用的是 TortoiseSVN 1.7 及以下版本。最新版本的 TortoiseSVN 是否有意改变了这种行为,或者我在这里遗漏了什么?

【问题讨论】:

    标签: svn tortoisesvn svn-merge


    【解决方案1】:
    1. 不要使用你不完全理解的技巧
    2. 不要在不需要的时候使用技巧(子树合并是必须的在极少数情况下,仅在某些特殊情况下
    3. SVN Book 阅读相关部分(“子树合并和子树合并信息”主题)轻轻地,慢慢地,不要匆忙

    现在,关于您的问题的注意事项:

    • 当您在子树中合并一些修订时,in 对父级没有任何意义 - 因为对于任何级别的父级而言,这些修订不会合并(即使他们没有任何子树外的对象)
    • 子树的合并信息仅用于避免重复合并在此子树中(不高于或低于),当相同的修订版稍后合并到某个父级(和当与相交修订(在子树和父合并中)完成此类合并时,移动到父级的合并根)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-06-13
      • 1970-01-01
      • 1970-01-01
      • 2021-07-09
      相关资源
      最近更新 更多