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

Regression: svn merge --record-only errors out on renamed path

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 1.8.x
    • Fix Version/s: ---
    • Component/s: libsvn_client
    • Labels:
      None

      Description

      'svn merge --record-only' is the recommended way for users to manually declare
      that a merge has happened for the purposes of manually working out a tough
      merge, or for blocking some changes from being included in a blanket merge, etc.
       Unfortunately, with Subversion 1.8 I can trigger an error in this functionality
      that was not present in Subversion 1.7.
      
      $ svn co -q http://svnbook.googlecode.com/svn/branches/1.7/en svnbook-1.7-en
      $ svn merge --record-only ^/trunk/en -c4516 svnbook-1.7-en/
      --- Merging r4516 into 'svnbook-1.7-en':
         C svnbook-1.7-en/book/ref-svnrdump.xml
      --- Recording mergeinfo for merge of r4516 into 'svnbook-1.7-en':
       U   svnbook-1.7-en
      Summary of conflicts:
        Tree conflicts: 1
      subversion/svn/util.c:548,
      subversion/libsvn_client/merge.c:11850,
      subversion/libsvn_client/merge.c:11740,
      subversion/libsvn_client/merge.c:9867,
      subversion/libsvn_client/resolved.c:80,
      subversion/libsvn_wc/conflicts.c:3067,
      subversion/libsvn_wc/wc_db.c:8468,
      subversion/libsvn_wc/wc_db.c:8369,
      subversion/libsvn_wc/wc_db.c:8354: (apr_err=SVN_ERR_WC_PATH_NOT_FOUND)
      svn: E155010: The node
      '/home/cmpilato/tests/svnbook-1.7-en/book/ref-svnrdump.xml' was not found.
      $ 
      
      The same thing, this time using a recent 1.7.x build:
      
      $ _svn17 -q co http://svnbook.googlecode.com/svn/branches/1.7/en svnbook-1.7-en
      $ _svn17 merge --record-only ^/trunk/en -c4516 svnbook-1.7-en/
      --- Recording mergeinfo for merge of r4516 into 'svnbook-1.7-en':
       U   svnbook-1.7-en
      $
      
      My guess is that in 1.8, this functionality is trying to be intelligent when, in
      fact, some degree of ignorance is the best gift it gives to users.  After all,
      if a *real* merge was going to be easy to do, they'd just do a real merge
      instead of manual mods and a --record-only merge.
      

        Attachments

        1. 1_issue4387.patch
          0.8 kB
          Stefan Sperling

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              cmpilato C. Michael Pilato
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: