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

Implement 'svn copy FOREIGN-URL WC --incorporate' (or 'svn add --incorporate')

    XMLWordPrintableJSON

    Details

    • Type: New Feature
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: ---
    • Fix Version/s: 1.8.0
    • Component/s: libsvn_client
    • Labels:

      Description

      Since 1.5.0 (ish...) Subversion has had some support for merges from foreign
      repositories.  This has become a very valuable way to manage vendor branches. 
      But to get off the right foot, you need to first import your remote vendor code
      and ideally do so with all the same node properties set on your repository's
      copy of that code as are found in the original (foreign) codebase.
      
      On a whim, I wanted to see what Subversion did if you run 'svn copy
      FOREIGN-REPOS WC'.  To my surprise, the copy happens, albeit with a warning
      about the foreign source resulting in a disjoint working copy.  (I figured we'd
      just croak here.)  And the warning is accurate --  the target of the copy is
      left as a disjoint working copy, just a checkout of the foreign location.
      
      I'd like to see us add a --incorporate flag to 'svn copy' which would tell
      Subversion to slurp up that disjoint working copy, connecting it to the primary
      working copy as a single scheduled-for-addition subtree, with node props all in
      place and so on.
      
      Alternatively, we could take a more flexible route here and bind this
      functionality not to 'svn copy' but to 'svn add'.  'svn add --incorporate' would
      recursive crawl a tree, scheduling it for addition and maintaining any
      Subversion properties found in the tree.  I think I actually like this idea
      better than the 'svn copy' concept.
      

        Attachments

          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: