Uploaded image for project: 'Subversion'
  1. Subversion
  2. SVN-4318

move-update misses replace tree-conflicts

    Details

    • Type: Bug
    • Status: Open
    • Priority: Major
    • Resolution: Unresolved
    • Affects Version/s: trunk
    • Fix Version/s: unscheduled
    • Component/s: libsvn_wc
    • Labels:
      None

      Description

      Move-update has access to the old (move-dst) and new (move-src) trees and uses
      this to generate the diff to be merged to make move-dst match move-src.  For
      nodes where the node kind does not change move-update assumes that the nodes in
      the two trees are directly related. However there could be a replace (delete
      plus add or copy) between the two nodes. This doesn't matter if there are no
      local changes but if when there are local changes merge should generate a
      tree-conflict and this is missed.
      
      There is no short-term solution and 1.8 is going to miss detecting these
      tree-conflicts.  If/when we introduce server-side move-tracking then this
      problem will include server-side moves as well as replaces.
      
      Possible long-term solutions:
      
       - move-update contacts the repository to get the history
      
       - move-update contacts the repository to get the delta including replaces
      
       - the original update stores any replaces in the tree-conflict
      

        Attachments

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              philipm Philip Martin
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated: