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

svn mergeinfo shows too few or too many eligible revisions

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Minor
    • Resolution: Fixed
    • trunk
    • 1.6.3
    • libsvn_client

    Description

      If a copied path has no explicit mergeinfo, svn mergeinfo shows no ranges
      available to merge.  Once a path has explicit mergeinfo, svn mergeinfo can show
      revisions eligible for merge that don't affect the merge source.
      
      A simple example demonstrates both problems.  Starting with a greek tree where
      r2 Copy 'A' to 'A_COPY'
      r3-r6 Some text changes under 'A'
      
      # svn mergeinfo on 'A_COPY' shows nothing eligible for merge.
      # Shouldn't we show r2:6 from 'A'?
      >svn mergeinfo merge_tests-90\A_COPY
      Path: merge_tests-90\A_COPY
      
      # Now we perform a merge to get some explicit mergeinfo on 'A_COPY'
      >svn merge %url%/A merge_tests-90\A_COPY
      --- Merging r2 through r6 into 'merge_tests-90\A_COPY':
      U    merge_tests-90\A_COPY\B\E\beta
      U    merge_tests-90\A_COPY\D\G\rho
      U    merge_tests-90\A_COPY\D\H\omega
      U    merge_tests-90\A_COPY\D\H\psi
      
      # svn mergeinfo looks a lot better now...
      >svn mergeinfo merge_tests-90\A_COPY
      Path: merge_tests-90\A_COPY
        Source path: /A
          Merged ranges: r1:6
          Eligible ranges:
      
      # ...but if we commit the merge...
      >svn ci -m "a merge" merge_tests-90
      Sending        merge_tests-90\A_COPY
      Sending        merge_tests-90\A_COPY\B\E\beta
      Sending        merge_tests-90\A_COPY\D\G\rho
      Sending        merge_tests-90\A_COPY\D\H\omega
      Sending        merge_tests-90\A_COPY\D\H\psi
      Transmitting file data ....
      Committed revision 7.
      
      >svn mergeinfo merge_tests-90\A_COPY
      Path: merge_tests-90\A_COPY
        Source path: /A
          Merged ranges: r1:6
          Eligible ranges: r6:7
                              ^
      ...then svn mergeinfo shows the commit revision r7 as eligible for merging.  We
      should probably filter that out.  In a more complex cherry picking example (e.g.
      our 1.5.x branch) we see a lot of revisions "eligible" for merging that don't
      affect the merge source.
      

      Attachments

        Activity

          People

            Unassigned Unassigned
            pburba Paul Burba
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: